
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>Mesa Release Notes</title>
<link rel="stylesheet" type="text/css" href="../mesa.css">
</head>
<body>

<div class="header">
<h1>The Mesa 3D Graphics Library</h1>
</div>

<iframe src="../contents.html"></iframe>
<div class="content">

<h1>Mesa 19.3.0 Release Notes / 2019-12-12</h1>

<p>
    Mesa 19.3.0 is a new development release. People who are concerned
    with stability and reliability should stick with a previous release or
    wait for Mesa 19.3.1.
</p>
<p>
Mesa 19.3.0 implements the OpenGL 4.6 API, but the version reported by
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 4.6. OpenGL
4.6 is <strong>only</strong> available if requested at context creation.
Compatibility contexts may report a lower version depending on each driver.
</p>
<p>
Mesa 19.3.0 implements the Vulkan 1.1 API, but the version reported by
the apiVersion property of the VkPhysicalDeviceProperties struct
depends on the particular driver being used.
</p>

<h2>SHA256 checksum</h2>
<pre>
    5fa0e4e9dca79560f6882e362f9db36d81cf96da16cf6a84e0ada7466a99a5d7  mesa-19.3.0.tar.xz
</pre>


<h2>New features</h2>

<ul>
    <li>GL_ARB_gl_spirv on i965, iris.
</li>
    <li>GL_ARB_spirv_extensions on i965, iris.
</li>
    <li>GL_EXT_demote_to_helper_invocation on iris, i965.
</li>
    <li>OpenGL 4.6 on i965, iris.
</li>
    <li>EGL_EXT_image_flush_external
</li>
    <li>VK_ANDROID_external_memory_android_hardware_buffer on RADV.
</li>
    <li>VK_KHR_shader_clock on Intel, RADV.
</li>
    <li>VK_KHR_shader_float_controls on Intel, RADV.
</li>
    <li>VK_KHR_spirv_1_4 on Intel, RADV.
</li>
    <li>VK_KHR_timeline_semaphore on RADV.
</li>
    <li>VK_KHR_vulkan_memory_model on Intel.
</li>
    <li>VK_EXT_shader_subgroup_ballot on Intel.
</li>
    <li>VK_EXT_shader_subgroup_vote on Intel.
</li>
    <li>VK_EXT_texel_buffer_alignment on RADV.
</li>
    <li>VK_INTEL_performance_query on Intel.
</li>
    <li>Meson support for windows using MSVC and MinGW
</li>
    <li>scons has been deprecated for non windows
</li>
    <li>Initial Intel gen12 (Tigerlake) support on anvil and iris
</li>
    <li>New compiler backend &quot;ACO&quot; for RADV (RADV_PERFTEST=aco)
</li>
    <li>VK_EXT_shader_demote_to_helper_invocation on RADV/ACO.
</li>
</ul>

<h2>Bug fixes</h2>

<ul>
    <li>[RADV] The Dead Rising 4 is causing a GPU hang with LLVM backend</li>
    <li>radeonsi: mpv --vo=vaapi incorrect rendering on gfx9+</li>
    <li>NULL resource when playing VP9 video through VDPAU on RX 570</li>
    <li>gnome-shell overview mode crash in recent mesa</li>
    <li>radv/aco Jedi Fallen Order hair rendering buggy</li>
    <li>[RADV] VK_KHR_timeline_semaphore balloons in runtime</li>
    <li>Shadow of Mordor has randomly dancing black shadows on Talion&#x27;s face</li>
    <li>ld.lld: error: duplicate symbol (mesa-19.3.0-rc1)</li>
    <li>triangle strip clipping with GL_FIRST_VERTEX_CONVENTION causes wrong vertex&#x27;s attribute to be broadcasted for flat interpolation</li>
    <li>[bisected][regression][g45,g965,ilk] piglit arb_fragment_program kil failures</li>
    <li>textureSize(samplerExternalOES, int) missing in desktop mesa 19.1.7 implementation</li>
    <li>HSW. Tropico 6 and SuperTuxKart have shadows flickering</li>
    <li>glxgears segfaults on POWER / Xvnc</li>
    <li>Objects leaving trails in Firefox with antialias and preserveDrawingBuffer in three.js WebGLRednerer with mesa 19.2</li>
    <li>radv regression after 84d9551b232bdcead017b212cbb3e291486e698c: vk: error: failed to submit CS</li>
    <li>Rename ACO README to README.md</li>
    <li>Steam crash due to commit e137b3a9b71a2711c1f68c8a8b9c0a7407fbcc4b (bisected)</li>
    <li>[Anv regression] SPIR-V abort in Aztec Ruins</li>
    <li>FreeBSD does not have _GNU_SOURCE in util/strtod.c</li>
    <li>glLinkProgram crash when using gcc-9 -O3 -flto due to use of uninitialised value</li>
    <li>KeyError: &#x27;force_scons&#x27;:</li>
    <li>link_shader and deserialize_glsl_program suddenly consume huge amount of RAM</li>
    <li>build errors after &quot;meson: add -Werror=empty-body to disallow `if(x);`&quot;</li>
    <li>performance regression in Heroes of the Storm with Mesa 19.1.1 &amp; Polaris</li>
    <li>Vulkan version of &quot;Middle-earth: Shadow of Mordor&quot; has graphics glitches on RADV driver (part 2)</li>
    <li>swr/rasterizer/core/format_types.h:1183: undefined reference to `_mm256_cvtps_ph&#x27;</li>
    <li>Meson: Building osmesa gallium and tests at the same time results in osmesa gallium build failure</li>
    <li>Vulkan version of &quot;Middle-earth: Shadow of Mordor&quot; has graphics glitches on RADV driver</li>
    <li>[amdgpu][Navi][llvm] Minimap problem in Nier Automata</li>
    <li>[bisected] anon_inode:sync_file file descriptor leak</li>
    <li>Cache meson packagecach in appveyor</li>
    <li>Piglit tests regression in gallium drivers</li>
    <li>Black ground in Dirt 4</li>
    <li>Superbibles examples crashing Mesa drivers (radeonsi) and causing gpu reset</li>
    <li>[CTS] dEQP-VK.graphicsfuzz.write-red-in-loop-nest crashes</li>
    <li>mesa and libglvnd install the same headers</li>
    <li>Multiple EGL displays with multiple window systems leads to a crash</li>
    <li>Regression: Doom (2016) crashes on Mesa 19.2 and above and Radeon 380 with Vulkan (worked on Mesa 19.1)</li>
    <li>Rocket League displays corruption when the game starts</li>
    <li>drm.h:50:9: error: unknown type name &#x27;uint8_t&#x27;</li>
    <li>Mesa build breaks when only building radeonsi due to missing llvm coroutines symbols</li>
    <li>radeonsi aborting in LLVM validation test in si_compile_tgsi_shader()</li>
    <li>meson.build:1447:6: ERROR: Problem encountered: libdrm required for gallium video statetrackers when using x11</li>
    <li>Mesa doesn&#x27;t build with current Scons version (3.1.0)</li>
    <li>libXvMC-1.0.12  breaks mesa build</li>
    <li>Meson can&#x27;t find 32-bit libXvMCW in non-standard path</li>
    <li>Mesa installs gl.pc and egl.pc even with libglvnd &gt;= 1.2.0</li>
</ul>

<h2>Changes</h2>

<ul>
    <p>Adam Jackson (44):</p>
    <li>      glx: Whitespace cleanups</li>
    <li>      glx: Sync &lt;GL/glxext.h&gt; with Khronos</li>
    <li>      glx: Make __glXGetDrawableAttribute return true sometimes</li>
    <li>      glx: Unset the direct_support bit for GLX_EXT_import_context</li>
    <li>      Revert &quot;glx: Unset the direct_support bit for GLX_EXT_import_context&quot;</li>
    <li>      egl: Enable 10bpc EGLConfigs for platform_{device,surfaceless}</li>
    <li>      gallium/xlib: Fix an obvious thinko</li>
    <li>      mesa: Remove unused gl_config::indexBits</li>
    <li>      mesa: Eliminate gl_config::have{Accum,Depth,Stencil}Buffer</li>
    <li>      mesa: Eliminate gl_config::rgbMode</li>
    <li>      gallium: Require LLVM &gt;= 3.4</li>
    <li>      gallium: Require LLVM &gt;= 3.5</li>
    <li>      gallium: Require LLVM &gt;= 3.6</li>
    <li>      gallium: Require LLVM &gt;= 3.7</li>
    <li>      gallium: Require LLVM &gt;= 3.8</li>
    <li>      gallium: Require LLVM &gt;= 3.9</li>
    <li>      egl/dri2: Refuse to add EGLConfigs with no supported surface types</li>
    <li>      glx: Remove unused indirection for glx_context-&gt;fillImage</li>
    <li>      gallium: Restore VSX for llvm &gt;= 4</li>
    <li>      ci: Run tests on i386 cross builds</li>
    <li>      gallium/xlib: Remove drawable caching from the MakeCurrent path</li>
    <li>      gallium/xlib: Remove MakeCurrent_PrevContext</li>
    <li>      gallium/xlib: Fix glXMakeCurrent(dpy, None, None, ctx)</li>
    <li>      docs: Update bug report URLs for the gitlab migration</li>
    <li>      glx: Avoid atof() when computing the server&#x27;s GLX version</li>
    <li>      glx: Fix drawable lookup bugs in glXUseXFont</li>
    <li>      egl/wayland: Reindent the format table</li>
    <li>      egl/wayland: Add FP16 format support</li>
    <li>      egl/wayland: Implement getCapability for the dri2 and image loaders</li>
    <li>      egl/surfaceless: Add FP16 format support</li>
    <li>      libgbm: Wire up getCapability for the image loader</li>
    <li>      glx: Move vertex array protocol state into the indirect backend</li>
    <li>      glx: Lift sending the MakeCurrent request to top-level code</li>
    <li>      glx: Implement GLX_EXT_no_config_context</li>
    <li>      Revert &quot;glx: Implement GLX_EXT_no_config_context&quot;</li>
    <li>      Revert &quot;glx: Lift sending the MakeCurrent request to top-level code&quot;</li>
    <li>      drisw: Simplify GC setup</li>
    <li>      drisw: Fix and simplify drawable setup</li>
    <li>      glx: Log the filename of the drm device if we fail to open it</li>
    <li>      egl/dri2: Don&#x27;t dlclose() the driver on dri2_load_driver_common failure</li>
    <li>      surfaceless: Support EGL_WL_bind_wayland_display</li>
    <li>      egl: Make native display detection work more than once</li>
    <li>      gallium/xlib: Fix xmesa drawable creation</li>
    <li>      gallium: Fix a bunch of undefined left-shifts in u_format_*</li>
    <p></p>
    <p>Alan Coopersmith (6):</p>
    <li>      c99_compat.h: Don&#x27;t try to use &#x27;restrict&#x27; in C++ code</li>
    <li>      util: Make Solaris implemention of p_atomic_add work with gcc</li>
    <li>      util: Workaround lack of flock on Solaris</li>
    <li>      util: Solaris has linux-style pthread_setname_np</li>
    <li>      meson: recognize &quot;sunos&quot; as the system name for Solaris</li>
    <li>      intel/common: include unistd.h for ioctl() prototype on Solaris</li>
    <p></p>
    <p>Alejandro Piñeiro (5):</p>
    <li>      i965: enable ARB_gl_spirv extension and ARB_spirv_extensions for gen7+</li>
    <li>      mesa/version: uncomment SPIR-V extensions</li>
    <li>      i965: Enable OpenGL 4.6 for Gen8+</li>
    <li>      v3d: take into account prim_counts_offset</li>
    <li>      v3d: adds an extra MOV for any sig.ld*</li>
    <p></p>
    <p>Alex Smith (1):</p>
    <li>      radv: Change memory type order for GPUs without dedicated VRAM</li>
    <p></p>
    <p>Alexandros Frantzis (1):</p>
    <li>      gitlab-ci: Update required libdrm version</li>
    <p></p>
    <p>Alyssa Rosenzweig (220):</p>
    <li>      pan/decode: Eliminate DYN_MEMORY_PROP</li>
    <li>      pan/decode: Don&#x27;t print MALI_DRAW_NONE</li>
    <li>      panfrost: Move pan_invocation to shared panfrost/</li>
    <li>      panfrost: Set workgroups z to 32 for non-instanced graphics</li>
    <li>      pan/decode: Don&#x27;t print canonical workgroup encoding</li>
    <li>      panfrost: Implement workgroups_x_shift_2 quirk</li>
    <li>      pan/decode: Silence workgroups_x_shift_2</li>
    <li>      pan/decode: Fix missing NULL terminator</li>
    <li>      pan/decode: Don&#x27;t print zero exception_status</li>
    <li>      pan/decode: Express tiler structures as offsets</li>
    <li>      pan/decode: Allow updating mmaps</li>
    <li>      pan/decode: Bounds check polygon list and tiler heap</li>
    <li>      panfrost: Move pan_tiler.c outside of Gallium</li>
    <li>      pan/decode: Verify and omit polygon size</li>
    <li>      pan/decode: Print &quot;just right&quot; count of texture pointers</li>
    <li>      panfrost: Remove DRY_RUN</li>
    <li>      panfrost: Correct polygon size computations</li>
    <li>      pan/decode: Check for a number of potential issues</li>
    <li>      pan/decode: Don&#x27;t print unreferenced attribute memory</li>
    <li>      pan/decode: Add static bounds checking utility</li>
    <li>      pan/decode: Do not print uniform/buffers explicitly</li>
    <li>      pan/decode: Validate AFBC fields are zero when AFBC is disabled</li>
    <li>      pan/decode: Check for MFBD preload chicken bit</li>
    <li>      pan/decode: Mark tripped zeroes with XXX</li>
    <li>      pan/decode: Normalize case matching XXX format</li>
    <li>      pan/decode: Normalize final instances of XXX</li>
    <li>      panfrost: Fix scoreboarding with dependency on job #0</li>
    <li>      panfrost: Do not expose PIPE_CAP_TEXTURE_MIRROR_CLAMP</li>
    <li>      panfrost: Don&#x27;t crash on GL_CLAMP</li>
    <li>      pan/decode: Guard attribute unknowns</li>
    <li>      panfrost: Don&#x27;t trip the prefix magic field</li>
    <li>      pan/decode: Handle VARYING_DISCARD</li>
    <li>      pan/decode: Treat RESERVED swizzles as errors</li>
    <li>      pan/decode: Validate swizzles against format</li>
    <li>      pan/decode: Don&#x27;t print the default swizzle</li>
    <li>      pan/decode: Use GLSL style formats/swizzles</li>
    <li>      pan/decode: Guard texture unknowns as zero trips</li>
    <li>      pan/decode: Break out pandecode_texture function</li>
    <li>      pan/decode: Validate texture dimensionality</li>
    <li>      panfrost: nr_mipmap_levels -&gt; levels</li>
    <li>      panfrost: Remove ancient TODO</li>
    <li>      pan/decode: Pretty-print sRGB format</li>
    <li>      panfrost: Break up usage2 field</li>
    <li>      pan/decode: Use concise texture printing</li>
    <li>      pan/decode: Include address in union mali_attr</li>
    <li>      pan/decode: Validate attribute/varying buffer pointer</li>
    <li>      pan/decode: Cleanup mali_attr printing</li>
    <li>      pan/midgard: Free liveness info</li>
    <li>      pan/midgard: Allocate `dependencies` on stack</li>
    <li>      pan/decode: Don&#x27;t leak FBD pointer</li>
    <li>      pan/decode: Remove all_zero</li>
    <li>      pan/bifrost: Avoid buffer overflow in disassembler</li>
    <li>      pan/midgard: Represent unused nodes by ~0</li>
    <li>      pan/midgard: Reorder bits check to fix 8-bit masks</li>
    <li>      pan/midgard: Simplify contradictory check.</li>
    <li>      panfrost: Don&#x27;t check reads_point_coord</li>
    <li>      pan/midgard: Mark fallthrough explicitly</li>
    <li>      panfrost: Pay attention to framebuffer dimension sign</li>
    <li>      panfrost: Clarify intention with PIPE_SWIZZLE_X check</li>
    <li>      panfrost: Prevent potential integer overflow in instancing</li>
    <li>      panfrost: Hoist job != NULL check</li>
    <li>      panfrost: Hoist bo != NULL check before dereference</li>
    <li>      panfrost: Fix missing ret assignment in DRM code</li>
    <li>      pan/bifrost: Correct file size signedness</li>
    <li>      panfrost: Guard against NULL rasterizer explicitly</li>
    <li>      panfrost: Pass stream_output_info by reference</li>
    <li>      pan/midgard: Breakout texture reg select printer</li>
    <li>      pan/midgard: Identify and disassemble indirect texture/sampler</li>
    <li>      panfrost: Don&#x27;t bail on PIPE_BUFFER</li>
    <li>      panfrost: Implement depth range clipping</li>
    <li>      panfrost: Fix PIPE_BUFFER spacing</li>
    <li>      pan/midgard,bifrost: Expand nir_const_load_to_arr</li>
    <li>      nir: Remove nir_const_load_to_arr</li>
    <li>      pan/decode: Hoist shader-db stats to shared decode</li>
    <li>      pan/midgard: Sketch static analysis to uniform count</li>
    <li>      pan/midgard: Compute work_count via writes</li>
    <li>      pan/midgard: Analyze simple loads/store</li>
    <li>      pan/midgard: Explain ffma</li>
    <li>      pan/midgard: Disassemble integer constants in hex</li>
    <li>      pan/decode: Remove mali_attr(_meta) framing</li>
    <li>      pan/decode: Removing uniform buffer framing</li>
    <li>      pan/decode: Eliminate non-FBD dumped case</li>
    <li>      pan/decode: Validate MFBD tags</li>
    <li>      pan/decode: Validate and simplify FRAGMENT payloads</li>
    <li>      pan/decode: Validate blend shaders don&#x27;t access I/O</li>
    <li>      pan/decode: Fix uniform printing</li>
    <li>      pan/decode: Promote &lt;no shader&gt; to an error</li>
    <li>      pan/decode: Disassemble before printing shader descriptor</li>
    <li>      pan/decode: Validate mali_shader_meta stats</li>
    <li>      pan/decode: Validate, but do not print, index buffer</li>
    <li>      pan/decode: Downgrade shader property mismatch to warning</li>
    <li>      pan/decode: Decode actual varying_meta address</li>
    <li>      pan/decode: Print stub for uniforms</li>
    <li>      pan/decode: Decouple attribute/meta printing</li>
    <li>      pan/decode: Remove size/stride divisibility check</li>
    <li>      pan/decode: Handle special varyings</li>
    <li>      panfrost: Remove vertex buffer offset from its size</li>
    <li>      panfrost: Implement gl_FragCoord correctly</li>
    <li>      pan/midgard: Fix writeout combining</li>
    <li>      pan/midgard: Analyze helper invocations</li>
    <li>      pan/decode: Validate and quiet helper invocation flag</li>
    <li>      pan/midgard, bifrost: Set lower_fdph = true</li>
    <li>      pan/midgard: Switch constants to uint32</li>
    <li>      pan/midgard: Add imov-&gt;fmov optimization</li>
    <li>      pan/midgard: Fold ssa_args into midgard_instruction</li>
    <li>      pan/midgard: Fix invert fusing with r26</li>
    <li>      freedreno/ir3: Link directly to Sethi-Ullman paper</li>
    <li>      pan/midgard: Count shader-db stats by bundled instructions</li>
    <li>      pan/midgard: Factor out mir_is_scalar</li>
    <li>      pan/midgard: Extract instruction sizing helper</li>
    <li>      pan/midgard: Expose mir_get/set_swizzle</li>
    <li>      pan/midgard: Add OP_IS_CSEL_V helper</li>
    <li>      pan/midgard: Fix corner case in RA</li>
    <li>      pan/midgard: Add post-schedule iteration helpers</li>
    <li>      pan/midgard: Include condition in branch-&gt;src[0]</li>
    <li>      pan/midgard: Document Midgard scheduling requirements</li>
    <li>      pan/midgard: Ensure fragment writeout is in the final block</li>
    <li>      pan/midgard: Track csel swizzle</li>
    <li>      pan/midgard: Add mir_insert_instruction*scheduled helpers</li>
    <li>      pan/midgard: csel_swizzle with mir get swizzle</li>
    <li>      pan/midgard: Extend mir_special_index to writeout</li>
    <li>      pan/midgard: Improve mir_mask_of_read_components</li>
    <li>      pan/midgard: Allow NULL argument in mir_has_arg</li>
    <li>      pan/midgard: Track shader quadword count while scheduling</li>
    <li>      pan/midgard: Add scheduling barriers</li>
    <li>      pan/midgard: Cleanup fragment writeout branch</li>
    <li>      pan/midgard: Remove texture_index</li>
    <li>      pan/midgard: Print branches in MIR</li>
    <li>      pan/midgard: Print MIR by the bundle</li>
    <li>      pan/midgard: Fix misc. RA issues</li>
    <li>      pan/midgard: Do not propagate swizzles into writeout</li>
    <li>      pan/midgard: Handle fragment writeout in RA</li>
    <li>      pan/midgard: Schedule before RA</li>
    <li>      pan/midgard: Remove mir_opt_post_move_eliminate</li>
    <li>      pan/midgard: Use shared psiz clamp pass</li>
    <li>      pan/decode: Fix uninitialized variables</li>
    <li>      pan/decode: Use %zu instead of %d</li>
    <li>      pan/decode: Use portable format specifier for 64-bit</li>
    <li>      pan/decode: Add missing format specifier</li>
    <li>      pan/midgard: Correct issues in disassemble.c</li>
    <li>      pan/midgard: Fix cppcheck issues</li>
    <li>      pan/midgard: Remove cppwrap.cpp</li>
    <li>      pan/midgard: Remove mir_print_bundle</li>
    <li>      pan/midgard: Remove mir_rewrite_index_*_tag</li>
    <li>      panfrost: Mark (1 &lt;&lt; 31) as unsigned</li>
    <li>      panfrost: Fix misc. issues flagged by cppcheck</li>
    <li>      panfrost: Remove panfrost_upload</li>
    <li>      pan/midgard: Add missing parans in SWIZZLE definition</li>
    <li>      pan/midgard: Fix component count handling for ldst</li>
    <li>      pan/midgard: Squeeze indices before scheduling</li>
    <li>      pan/midgard: Add flatten_mir helper</li>
    <li>      pan/midgard: Calculate dependency graph</li>
    <li>      pan/midgard: Initialize worklist</li>
    <li>      pan/midgard: Add mir_choose_instruction stub</li>
    <li>      pan/midgard: Add mir_update_worklist helper</li>
    <li>      pan/midgard: Add mir_choose_bundle helper</li>
    <li>      pan/midgard: Add mir_schedule_texture/ldst/alu helpers</li>
    <li>      pan/midgard: Remove csel constant unit force</li>
    <li>      pan/midgard: Add constant intersection filters</li>
    <li>      pan/midgard: Add predicate-&gt;exclude</li>
    <li>      pan/midgard: Implement predicate-&gt;unit</li>
    <li>      pan/midgard: Add helpers for scheduling conditionals</li>
    <li>      pan/midgard: Extend csel_swizzle to branches</li>
    <li>      pan/midgard: Implement load/store pairing</li>
    <li>      pan/midgard: Add mir_choose_alu helper</li>
    <li>      pan/midgard: Add distance metric to choose_instruction</li>
    <li>      pan/midgard: Use new scheduler</li>
    <li>      pan/midgard: Don&#x27;t double check SCALAR units</li>
    <li>      pan/midgard: Extend choose_instruction for scalar units</li>
    <li>      pan/midgard: Schedule to smul/sadd</li>
    <li>      pan/midgard: Only one conditional per bundle allowed</li>
    <li>      pan/midgard: Allow 6 instructions per bundle</li>
    <li>      pan/midgard: Allow writeout to see into the future</li>
    <li>      pan/midgard: Tightly pack 32-bit constants</li>
    <li>      pan/midgard: Add mir_flip helper</li>
    <li>      pan/midgard: Add csel invert optimization</li>
    <li>      pan/midgard: Allow scheduling conditions with constants</li>
    <li>      pan/midgard: Remove mir_has_multiple_writes</li>
    <li>      pan/midgard: Add mir_calculate_temp_count helper</li>
    <li>      pan/midgard: Move RA&#x27;s liveness analysis into midgard_liveness.c</li>
    <li>      pan/midgard: Don&#x27;t try to OR live_in of successors</li>
    <li>      pan/midgard: Begin tracking liveness metadata</li>
    <li>      pan/midgard: Invalidate liveness for mir_is_live_after</li>
    <li>      pan/midgard: Calculate temp_count for liveness</li>
    <li>      pan/midgard: Replace mir_is_live_after with new pass</li>
    <li>      pan/midgard: Report read mask for branch arguments</li>
    <li>      pan/midgard: Allow non-contiguous masks in UBO lowering</li>
    <li>      pan/midgard: Don&#x27;t try to propagate swizzles to branches</li>
    <li>      pan/midgard: Add perspective ops to mir_get_swizzle</li>
    <li>      pan/midgard: Fix mir_mask_of_read_components with dot products</li>
    <li>      panfrost: Disable frame throttling</li>
    <li>      pan/midgard: Use 16-bit liveness masks</li>
    <li>      pan/midgard: Allow COMPUTE jobs in panfrost_bo_access_for_stage</li>
    <li>      pan/midgard: Fix memory corruption in register spilling</li>
    <li>      pan/midgard: Do not repeatedly spill same value</li>
    <li>      pan/midgard: Debug mir_insert_instruction_after_scheduled</li>
    <li>      pan/midgard: Identify 64-bit atomic opcodes</li>
    <li>      pan/midgard/disasm: Fix printing 8-bit/16-bit masks</li>
    <li>      pan/midgard: Factor out mir_get_alu_src</li>
    <li>      pan/midgard: Tableize load/store ops</li>
    <li>      pan/midgard: Implement OP_IS_STORE with table</li>
    <li>      pan/midgard: Add helpers for manipulating byte masks</li>
    <li>      pan/midgard: Report byte masks for read components</li>
    <li>      pan/midgard: Simplify mir_bytemask_of_read_components</li>
    <li>      pan/midgard: Implement per-byte liveness tracking</li>
    <li>      pan/midgard: Handle nontrivial masks in texture RA</li>
    <li>      pan/midgard: Create dependency graph bytewise</li>
    <li>      pan/midgard: Implement SIMD-aware dead code elimination</li>
    <li>      panfrost/ci: Update expectations list</li>
    <li>      pan/midgard: Add mir_set_bytemask helper</li>
    <li>      pan/midgard: Expose more typesize manipulation routines</li>
    <li>      pan/midgard: Express allocated registers as offsets</li>
    <li>      pipe-loader: Add kmsro pipe_loader target</li>
    <li>      pipe-loader: Default to kmsro if probe fails</li>
    <li>      panfrost: Expose serialized NIR support</li>
    <li>      pan/midgard: Disable precise occlusion queries</li>
    <li>      panfrost: Cleanup _shader_upper -&gt; shader</li>
    <li>      panfrost: Remove unused definitions in mali-job.h</li>
    <li>      pipe-loader: Build kmsro loader for with all kmsro targets</li>
    <li>      gallium/util: Support POLYGON in u_stream_outputs_for_vertices</li>
    <p></p>
    <p>Andreas Baierl (5):</p>
    <li>      lima/ppir: Rename ppir_op_dummy to ppir_op_undef</li>
    <li>      lima/ppir: Add undef handling</li>
    <li>      lima/ppir: Add various varying fetch sources to disassembler</li>
    <li>      lima: Fix compiler warning in standalone compiler</li>
    <li>      lima: Fix crash when there are no vertex shader attributes</li>
    <p></p>
    <p>Andreas Gottschling (1):</p>
    <li>      drisw: Fix shared memory leak on drawable resize</li>
    <p></p>
    <p>Andres Gomez (12):</p>
    <li>      nir/algebraic: mark float optimizations returning one parameter as inexact</li>
    <li>      docs: Update to OpenGL 4.6 in the release notes</li>
    <li>      nir/opcodes: Clear variable names confusion</li>
    <li>      docs: Add the maximum implemented Vulkan API version in 19.1 rel notes</li>
    <li>      docs: Add the maximum implemented Vulkan API version in 19.2 rel notes</li>
    <li>      docs: Add the maximum implemented Vulkan API version in 19.3 rel notes</li>
    <li>      docs/features: Update status list of Vulkan extensions</li>
    <li>      docs/features: Update VK_KHR_display_swapchain status</li>
    <li>      i965/fs: add a comment about how the rounding mode in fmul is set</li>
    <li>      i965/fs: set rounding mode when emitting the flrp instruction</li>
    <li>      docs/relnotes: add support for GL_ARB_gl_spirv, GL_ARB_spirv_extensions and OpenGL 4.6 on i965 and iris</li>
    <li>      egl: Remove the 565 pbuffer-only EGL config under X11.</li>
    <p></p>
    <p>Andres Rodriguez (2):</p>
    <li>      radv: add RADV_DEBUG=allentrypoints</li>
    <li>      radv: additional query fixes</li>
    <p></p>
    <p>Andrii Simiklit (1):</p>
    <li>      glsl: disallow incompatible matrices multiplication</li>
    <p></p>
    <p>Anuj Phogat (5):</p>
    <li>      intel/gen12: Add L3 configurations</li>
    <li>      intel: Add few Ice Lake brand strings</li>
    <li>      genxml/gen11+: Add COMMON_SLICE_CHICKEN4 register</li>
    <li>      intel/gen11+: Enable Hardware filtering of Semi-Pipelined State in WM</li>
    <li>      intel/isl/icl: Use halign 8 instead of 4 hw workaround</li>
    <p></p>
    <p>Arcady Goldmints-Orlov (1):</p>
    <li>      anv: fix descriptor limits on gen8</li>
    <p></p>
    <p>Bas Nieuwenhuizen (63):</p>
    <li>      radv: Use correct vgpr_comp_cnt for VS if both prim_id and instance_id are needed.</li>
    <li>      radv: Emit VGT_GS_ONCHIP_CNTL for tess on GFX10.</li>
    <li>      radv: Disable NGG for geometry shaders.</li>
    <li>      tu: Set up glsl types.</li>
    <li>      radv: Only break batch on framebuffer change with dfsm.</li>
    <li>      radv: Disable dfsm by default even on Raven.</li>
    <li>      radv: Add DFSM support.</li>
    <li>      glx: Remove redundant null check.</li>
    <li>      amd: Build aco only if radv is enabled</li>
    <li>      radv: Add workaround for hang in The Surge 2.</li>
    <li>      turnip: Add image-&gt;image blitting.</li>
    <li>      turnip: Always use UINT formats for copies.</li>
    <li>      turnip: Disallow NPoT formats.</li>
    <li>      turnip: Add todo for d24_s8 copies</li>
    <li>      radv: Fix condition for skipping the continue CS.</li>
    <li>      radv: Fix warning in 32-bit build.</li>
    <li>      meson: Always add LLVM coroutines module.</li>
    <li>      amd/llvm: Fix warning due to asserted-only variable.</li>
    <li>      radv: Implement &amp; enable VK_EXT_texel_buffer_alignment.</li>
    <li>      radv: Cleanup buffer_from_fd.</li>
    <li>      radv: Handle device memory alloc failure with normal free.</li>
    <li>      radv: Split out layout code from image creation.</li>
    <li>      radv: Delay patching for imported images until layout time.</li>
    <li>      radv: Handle slightly different image dimensions.</li>
    <li>      radv: Unset vk_info in radv_image_create_layout.</li>
    <li>      radv: Add VK_ANDROID_external_memory_android_hardware_buffer.</li>
    <li>      radv/android: Add android hardware buffer field to device memory.</li>
    <li>      radv/android: Add android hardware buffer queries.</li>
    <li>      radv: Disallow sparse shared images.</li>
    <li>      radv: Derive android usage from create flags.</li>
    <li>      radv: Deal with Android external formats.</li>
    <li>      radv/android: Add android hardware buffer import/export.</li>
    <li>      radv: Allow Android image binding.</li>
    <li>      radv: Expose image handle compat types for Android handles.</li>
    <li>      radv: Check the size of the imported buffer.</li>
    <li>      radv: Enable VK_ANDROID_external_memory_android_hardware_buffer.</li>
    <li>      nir/dead_cf: Remove dead control flow after infinite loops.</li>
    <li>      radv: Fix single stage constant flush with merged shaders.</li>
    <li>      radv: Compute hashes in secure process for secure compilation.</li>
    <li>      radv: Add an early exit in the secure compile if we already have the cache entries.</li>
    <li>      radv: Clean up unused variable.</li>
    <li>      radv: Split out commandbuffer submission.</li>
    <li>      radv: Do sparse binding in queue submission.</li>
    <li>      radv: Improve fence signalling in QueueSubmit.</li>
    <li>      radv: Always enable syncobj when supported for all fences/semaphores.</li>
    <li>      radv: Split semaphore into two parts as enum+union.</li>
    <li>      radv: Add temporary datastructure for submissions.</li>
    <li>      radv: Add timelines with a VK_KHR_timeline_semaphore impl.</li>
    <li>      radv: Add wait-before-submit support for timelines.</li>
    <li>      radv: Enable VK_KHR_timeline_semaphore.</li>
    <li>      radv: Start signalling semaphores in WSI acquire.</li>
    <li>      radv: Allocate space for temp. semaphore parts.</li>
    <li>      radv: Fix timeout handling in syncobj wait.</li>
    <li>      radv: Remove _mesa_locale_init/fini calls.</li>
    <li>      turnip: Remove _mesa_locale_init/fini calls.</li>
    <li>      anv: Remove _mesa_locale_init/fini calls.</li>
    <li>      radv: Fix disk_cache_get size argument.</li>
    <li>      radv: Close all unnecessary fds in secure compile.</li>
    <li>      radv: Do not change scratch settings while shaders are active.</li>
    <li>      radv: Allocate cmdbuffer space for buffer marker write.</li>
    <li>      radv: Unify max_descriptor_set_size.</li>
    <li>      radv: Fix timeline semaphore refcounting.</li>
    <li>      radv: Fix RGBX Android&lt;-&gt;Vulkan format correspondence.</li>
    <p></p>
    <p>Ben Crocker (1):</p>
    <li>      llvmpipe: use ppc64le/ppc64 Large code model for JIT-compiled shaders</li>
    <p></p>
    <p>Boris Brezillon (73):</p>
    <li>      panfrost: Free the instruction object in mir_remove_instruction()</li>
    <li>      panfrost: Free all block/instruction objects before leaving midgard_compile_shader_nir()</li>
    <li>      panfrost: Make sure bundle.instructions[] contains valid instructions</li>
    <li>      Revert &quot;panfrost: Free all block/instruction objects before leaving midgard_compile_shader_nir()&quot;</li>
    <li>      panfrost: Use ralloc() to allocate instructions to avoid leaking those objs</li>
    <li>      panfrost: Reset the damage area on imported resources</li>
    <li>      panfrost: Add transient BOs to job batches</li>
    <li>      panfrost: s/job/batch/</li>
    <li>      panfrost: Pass a batch to panfrost_drm_submit_vs_fs_batch()</li>
    <li>      panfrost: Stop passing a ctx to functions being passed a batch</li>
    <li>      panfrost: Make transient allocation rely on the BO cache</li>
    <li>      panfrost: Convert ctx-&gt;{scratchpad, tiler_heap, tiler_dummy} to plain BOs</li>
    <li>      panfrost: Get rid of unused panfrost_context fields</li>
    <li>      panfrost: Get rid of the now unused SLAB allocator</li>
    <li>      panfrost: Rename pan_bo_cache.c into pan_bo.c</li>
    <li>      panfrost: Fix a list_assert() in schedule_block()</li>
    <li>      panfrost: Rework midgard_pair_load_store() to kill the nested foreach loop</li>
    <li>      panfrost: Use a pipe_framebuffer_state as the batch key</li>
    <li>      panfrost: Get rid of the unused &#x27;flush jobs accessing res&#x27; infra</li>
    <li>      panfrost: Allow testing if a specific batch is targeting a scanout FB</li>
    <li>      panfrost: Pass a batch to panfrost_{allocate,upload}_transient()</li>
    <li>      panfrost: Pass a batch to functions emitting FB descs</li>
    <li>      panfrost: Use ctx-&gt;wallpaper_batch in panfrost_blit_wallpaper()</li>
    <li>      panfrost: Pass a batch to panfrost_set_value_job()</li>
    <li>      panfrost: Prepare things to avoid flushes on FB switch</li>
    <li>      panfrost: Delay payloads[].offset_start initialization</li>
    <li>      panfrost: Move the fence creation in panfrost_flush()</li>
    <li>      panfrost: Move the batch submission logic to panfrost_batch_submit()</li>
    <li>      panfrost: Stop exposing internal panfrost_*_batch() functions</li>
    <li>      panfrost: Use the correct type for the bo_handle array</li>
    <li>      panfrost: Add missing panfrost_batch_add_bo() calls</li>
    <li>      panfrost: Add polygon_list to the batch BO set at allocation time</li>
    <li>      panfrost: Kill a useless memset(0) in panfrost_create_context()</li>
    <li>      panfrost: Stop passing has_draws to panfrost_drm_submit_vs_fs_batch()</li>
    <li>      panfrost: Get rid of pan_drm.c</li>
    <li>      panfrost: Move panfrost_bo_{reference,unreference}() to pan_bo.c</li>
    <li>      panfrost: s/PAN_ALLOCATE_/PAN_BO_/</li>
    <li>      panfrost: Move the BO API to its own header</li>
    <li>      panfrost: Stop exposing panfrost_bo_cache_{fetch,put}()</li>
    <li>      panfrost: Don&#x27;t check if BO is mmaped before calling panfrost_bo_mmap()</li>
    <li>      panfrost: Stop passing screen around for BO operations</li>
    <li>      panfrost: Stop using panfrost_bo_release() outside of pan_bo.c</li>
    <li>      panfrost: Add panfrost_bo_{alloc,free}()</li>
    <li>      panfrost: Don&#x27;t return imported/exported BOs to the cache</li>
    <li>      panfrost: Add the panfrost_batch_create_bo() helper</li>
    <li>      panfrost: Add FBO BOs to batch-&gt;bos earlier</li>
    <li>      panfrost: Allocate tiler and scratchpad BOs per-batch</li>
    <li>      Revert &quot;panfrost: Rework midgard_pair_load_store() to kill the nested foreach loop&quot;</li>
    <li>      panfrost: Fix indexed draws</li>
    <li>      dEQP-GLES2.functional.buffer.write.use.index_array.* are passing now.</li>
    <li>      panfrost: Add the shader BO to the batch in patch_shader_state()</li>
    <li>      panfrost: Extend the panfrost_batch_add_bo() API to pass access flags</li>
    <li>      panfrost: Make panfrost_batch-&gt;bos a hash table</li>
    <li>      panfrost: Add a batch fence</li>
    <li>      panfrost: Use the per-batch fences to wait on the last submitted batch</li>
    <li>      panfrost: Add a panfrost_freeze_batch() helper</li>
    <li>      panfrost: Start tracking inter-batch dependencies</li>
    <li>      panfrost: Prepare panfrost_fence for batch pipelining</li>
    <li>      panfrost: Add a panfrost_flush_all_batches() helper</li>
    <li>      panfrost: Add a panfrost_flush_batches_accessing_bo() helper</li>
    <li>      panfrost: Add flags to reflect the BO imported/exported state</li>
    <li>      panfrost: Make sure the BO is &#x27;ready&#x27; when picked from the cache</li>
    <li>      panfrost: Do fine-grained flushing when preparing BO for CPU accesses</li>
    <li>      panfrost: Kill the explicit serialization in panfrost_batch_submit()</li>
    <li>      panfrost: Get rid of the flush in panfrost_set_framebuffer_state()</li>
    <li>      Revert &quot;st/dri2: Implement DRI2bufferDamageExtension&quot;</li>
    <li>      Revert &quot;Revert &quot;st/dri2: Implement DRI2bufferDamageExtension&quot;&quot;</li>
    <li>      panfrost: Make sure a clear does not re-use a pre-existing batch</li>
    <li>      panfrost: Draw the wallpaper when only depth/stencil bufs are cleared</li>
    <li>      panfrost: Fix support for packed 24-bit formats</li>
    <li>      panfrost: Fix the DISCARD_WHOLE_RES case in transfer_map()</li>
    <li>      gallium: Fix the -&gt;set_damage_region() implementation</li>
    <li>      panfrost: Make sure we reset the damage region of RTs at flush time</li>
    <p></p>
    <p>Brian Paul (3):</p>
    <li>      st/nir: fix illegal designated initializer in st_glsl_to_nir.cpp</li>
    <li>      REVIEWERS: add VMware reviewers</li>
    <li>      Call shmget() with permission 0600 instead of 0777</li>
    <p></p>
    <p>Caio Marcelo de Oliveira Filho (66):</p>
    <li>      intel/compiler: Silence maybe-uninitialized warning in GCC 9.1.1</li>
    <li>      anv: Drop unused local variable</li>
    <li>      compiler/glsl: Fix warning about unused function</li>
    <li>      intel/decoders: Avoid uninitialized variable warnings</li>
    <li>      iris: Guard GEN9-only function in Iris state to avoid warning</li>
    <li>      tgsi: Remove unused local</li>
    <li>      i965: Silence brw_blorp uninitialized warning</li>
    <li>      nir/lower_explicit_io: Handle 1 bit loads and stores</li>
    <li>      glsl/nir: Avoid overflow when setting max_uniform_location</li>
    <li>      mesa/st: Do not rely on name to identify special uniforms</li>
    <li>      compiler: Add glsl_contains_opaque() helper</li>
    <li>      mesa: Pack gl_program_parameter struct</li>
    <li>      glsl/nir: Fill in the Parameters in NIR linker</li>
    <li>      mesa: Fill Parameter storage indices even when not using SPIR-V</li>
    <li>      mesa/program: Associate uniform storage without using names</li>
    <li>      mesa/st: Lookup parameters without using names</li>
    <li>      mesa/st: Extract preprocessing NIR steps</li>
    <li>      mesa/st: Add support for SPIR-V shaders</li>
    <li>      mesa/st: Don&#x27;t expect prog-&gt;nir to already exist</li>
    <li>      mesa/spirv: Set a few more extensions</li>
    <li>      gallium: Add ARB_gl_spirv support</li>
    <li>      glsl/nir: Add and use a gl_nir_link() function</li>
    <li>      iris: Enable ARB_gl_spirv and ARB_spirv_extensions</li>
    <li>      mesa/st: Fallback to name lookup when the variable have no Parameter</li>
    <li>      spirv: Update JSON and headers to 1.5</li>
    <li>      spirv: Handle ShaderLayer and ShaderViewportIndex capabilities</li>
    <li>      spirv: Add missing break for capability handling</li>
    <li>      intel/fs: Add Fall-through comment</li>
    <li>      mesa: Extension boilerplate for EXT_demote_to_helper_invocation</li>
    <li>      glsl: Add ir_demote</li>
    <li>      glsl: Parse `demote` statement</li>
    <li>      glsl: Add helperInvocationEXT() builtin</li>
    <li>      gallium: Add PIPE_CAP_DEMOTE_TO_HELPER_INVOCATION</li>
    <li>      iris: Enable EXT_demote_to_helper_invocation</li>
    <li>      i965: Enable EXT_demote_to_helper_invocation</li>
    <li>      docs/relnotes: Add EXT_demote_to_helper_invocation support on iris, i965</li>
    <li>      docs: Fix GL_EXT_demote_to_helper_invocation name</li>
    <li>      vulkan: Update the XML and headers to 1.1.124</li>
    <li>      spirv: Implement SPV_KHR_shader_clock</li>
    <li>      anv: Implement VK_KHR_shader_clock</li>
    <li>      anv: Enable VK_EXT_shader_subgroup_{ballot,vote}</li>
    <li>      docs: Update recently enabled VK extensions on Intel</li>
    <li>      intel: Add INTEL_DEBUG=nofc for disabling fast clears</li>
    <li>      anv: Disable fast clears when running with INTEL_DEBUG=nofc</li>
    <li>      iris: Disable fast clears when running with INTEL_DEBUG=nofc</li>
    <li>      i965: Disable fast clears when running with INTEL_DEBUG=nofc</li>
    <li>      vulkan: Update the XML and headers to 1.1.125</li>
    <li>      anv: Advertise VK_KHR_spirv_1_4</li>
    <li>      intel/fs/gen12: Add tests for scoreboard pass</li>
    <li>      nir: Add scoped_memory_barrier intrinsic</li>
    <li>      nir/tests: Add copy propagation tests with scoped_memory_barrier</li>
    <li>      intel/fs: Implement scoped_memory_barrier</li>
    <li>      spirv: Parse memory semantics for atomic operations</li>
    <li>      spirv: Emit memory barriers for atomic operations</li>
    <li>      spirv: Add SpvMemoryModelVulkan and related capabilities</li>
    <li>      spirv: Add option to emit scoped memory barriers</li>
    <li>      spirv: Handle MakeTexelAvailable/Visible</li>
    <li>      spirv: Handle MakePointerAvailable/Visible</li>
    <li>      anv: Implement VK_KHR_vulkan_memory_model</li>
    <li>      spirv: Add imageoperands_to_string helper</li>
    <li>      spirv: Check that only one offset is defined as Image Operand</li>
    <li>      spirv: Add helper to find args of Image Operands</li>
    <li>      anv: Fix output of INTEL_DEBUG=bat for chained batches</li>
    <li>      spirv: Don&#x27;t fail if multiple ordering semantics bits are set</li>
    <li>      spirv: Don&#x27;t leak GS initialization to other stages</li>
    <li>      anv: Initialize depth_bounds_test_enable when not explicitly set</li>
    <p></p>
    <p>Chris Wilson (2):</p>
    <li>      iris: Allow packed RGB pbo uploads</li>
    <li>      st/mesa: Map MESA_FORMAT_RGB_UNORM8 &lt;-&gt; PIPE_FORMAT_R8G8B8_UNORM</li>
    <p></p>
    <p>Christian Gmeiner (13):</p>
    <li>      gallium: util_set_vertex_buffers_mask(..): make use of u_bit_consecutive(..)</li>
    <li>      etnaviv: a bit of micro-optimization</li>
    <li>      Revert &quot;gallium: remove PIPE_CAP_TEXTURE_SHADOW_MAP&quot;</li>
    <li>      etnaviv: disable ARB_shadow</li>
    <li>      etnaviv: etna_resource_copy_region(..): drop assert</li>
    <li>      etnaviv: support ARB_framebuffer_object</li>
    <li>      etnaviv: nir: start to make use of compile_error(..)</li>
    <li>      etnaviv: output the same shader-db format as freedreno, v3d and intel</li>
    <li>      etnaviv: fix compile warnings</li>
    <li>      etnaviv: fix code style</li>
    <li>      etnaviv: store updated usage in pipe_transfer object</li>
    <li>      etnaviv: keep track of buffer valid ranges for PIPE_BUFFER</li>
    <li>      etnaviv: remove dead code</li>
    <p></p>
    <p>Clément Guérin (1):</p>
    <li>      radeonsi: enable zerovram for Rocket League</li>
    <p></p>
    <p>Connor Abbott (40):</p>
    <li>      st/nir: Fix num_inputs for VS inputs</li>
    <li>      radeonsi/nir: Don&#x27;t recompute num_inputs and num_outputs</li>
    <li>      ac/nir: Handle const array offsets in get_deref_offset()</li>
    <li>      ac/nir: Assert GS input index is constant</li>
    <li>      radeonsi/nir: Don&#x27;t add const offset to indirect</li>
    <li>      radeonsi/nir: Add const_index when loading GS inputs</li>
    <li>      radeonsi/nir: Rewrite store intrinsic gathering</li>
    <li>      radeonsi/nir: Rewrite output scanning</li>
    <li>      ac/nir: add a workaround for viewing a slice of 3D as a 2D image</li>
    <li>      ac/nir: Remove gfx9_stride_size_workaround_for_atomic</li>
    <li>      ac/nir: Rewrite gather4 integer workaround based on radeonsi</li>
    <li>      ac/nir: Fix gather4 integer wa with unnormalized coordinates</li>
    <li>      nir: Fix num_ssbos when lowering atomic counters</li>
    <li>      ttn: Fill out more info fields</li>
    <li>      radeonsi/nir: Remove uniform variable scanning</li>
    <li>      radv/radeonsi: Don&#x27;t count read-only data when reporting code size</li>
    <li>      ac/nir: Support load_constant intrinsics</li>
    <li>      ac/nir: Enable nir_opt_large_constants</li>
    <li>      st/nir: Call nir_remove_unused_variables() in the opt loop</li>
    <li>      st/nir: Don&#x27;t lower indirects when linking</li>
    <li>      gallium: Plumb through a way to disable GLSL const lowering</li>
    <li>      radeonsi/nir: Don&#x27;t lower constant arrays to uniforms</li>
    <li>      radv: Call nir_propagate_invariant()</li>
    <li>      lima/gpir: Do all lowerings before rsched</li>
    <li>      lima/gpir: Ignore unscheduled successors in can_use_complex()</li>
    <li>      lima/gpir: Fix schedule_first insertion logic</li>
    <li>      lima/gpir: Fix fake dep handling for schedule_first nodes</li>
    <li>      lima/gpir: Disallow moves for schedule_first nodes</li>
    <li>      nir/opt_if: Fix undef handling in opt_split_alu_of_phi()</li>
    <li>      lima/gpir: Fix compiler warning</li>
    <li>      lima/gpir: Only try to place actual children</li>
    <li>      lima/gpir: Support branch instructions</li>
    <li>      lima/gpir: Use registers for values live in multiple blocks</li>
    <li>      lima/gpir: Fix postlog2 fixup handling</li>
    <li>      lima/gpir: Don&#x27;t emit movs when translating from NIR</li>
    <li>      lima/gpir: Fix 64-bit shift in scheduler spilling</li>
    <li>      nir/opt_large_constants: Handle store writemasks</li>
    <li>      nir: Fix overlapping vars in nir_assign_io_var_locations()</li>
    <li>      nir/sink: Rewrite loop handling logic</li>
    <li>      nir/sink: Don&#x27;t sink load_ubo to outside of its defining loop</li>
    <p></p>
    <p>Daniel Kolesa (1):</p>
    <li>      util: add auxv based PowerPC AltiVec/VSX detection</li>
    <p></p>
    <p>Daniel Schürmann (44):</p>
    <li>      nir/algebraic: some subtraction optimizations</li>
    <li>      aco: Initial commit of independent AMD compiler</li>
    <li>      radv/aco: Setup alternate path in RADV to support the experimental ACO compiler</li>
    <li>      radv: enable clustered reductions</li>
    <li>      radv/aco: enable VK_EXT_shader_demote_to_helper_invocation</li>
    <li>      radv: remove dead shared variables</li>
    <li>      aco: only emit waitcnt on loop continues if we there was some load or export</li>
    <li>      freedreno: Enable the nir_opt_algebraic_late() pass.</li>
    <li>      nir: recombine nir_op_*sub when lower_sub = false</li>
    <li>      nir: Remove unnecessary subtraction optimizations</li>
    <li>      radv/aco: Don&#x27;t lower subtractions</li>
    <li>      aco: call nir_opt_algebraic_late() exhaustively</li>
    <li>      nouveau: set lower_sub = true</li>
    <li>      aco: re-use existing phi instruction when lowering boolean phis</li>
    <li>      aco: don&#x27;t reorder instructions in order to lower boolean phis</li>
    <li>      aco: don&#x27;t combine minmax3 if there is a neg or abs modifier in between</li>
    <li>      aco: ensure that uniform booleans are computed in WQM if their uses happen in WQM</li>
    <li>      aco: refactor value numbering</li>
    <li>      aco: restrict scheduling depending on max_waves</li>
    <li>      aco: only skip RAR dependencies if the variable is killed somewhere</li>
    <li>      aco: add can_reorder flags to load_ubo and load_constant</li>
    <li>      aco: don&#x27;t schedule instructions through depending VMEM instructions</li>
    <li>      aco: Lower to CSSA</li>
    <li>      aco: improve live variable analysis</li>
    <li>      aco: remove potential critical edge on loops.</li>
    <li>      aco: fix live-range splits of phis</li>
    <li>      aco: fix transitive affinities of spilled variables</li>
    <li>      aco: don&#x27;t insert the exec mask into set of live-out variables when spilling</li>
    <li>      aco: consider loop_exit blocks like merge blocks, even if they have only one predecessor</li>
    <li>      aco: don&#x27;t add interferences between spilled phi operands</li>
    <li>      aco: simplify calculation of target register pressure when spilling</li>
    <li>      aco: ensure that spilled VGPR reloads are done after p_logical_start</li>
    <li>      aco: omit linear VGPRs as spill variables</li>
    <li>      aco: always set scratch_offset in startpgm</li>
    <li>      aco: implement VGPR spilling</li>
    <li>      docs/relnotes/new_features.txt: Add note about ACO</li>
    <li>      aco: fix immediate offset for spills if scratch is used</li>
    <li>      aco: only use single-dword loads/stores for spilling</li>
    <li>      aco: fix accidential reordering of instructions when scheduling</li>
    <li>      aco: workaround Tonga/Iceland hardware bug</li>
    <li>      aco: fix invalid access on Pseudo_instructions</li>
    <li>      aco: preserve kill flag on moved operands during RA</li>
    <li>      aco: don&#x27;t split live-ranges of linear VGPRs</li>
    <li>      aco: fix a couple of value numbering issues</li>
    <p></p>
    <p>Daniel Stone (1):</p>
    <li>      panfrost: Respect offset for imported resources</li>
    <p></p>
    <p>Danilo Spinella (1):</p>
    <li>      egl: Include stddef.h in generated source</li>
    <p></p>
    <p>Danylo Piliaiev (10):</p>
    <li>      nir/loop_unroll: Update the comments for loop_prepare_for_unroll</li>
    <li>      nir/loop_unroll: Prepare loop for unrolling in wrapper_unroll</li>
    <li>      nir/loop_analyze: Treat do{}while(false) loops as 0 iterations</li>
    <li>      glsl: Fix unroll of do{} while(false) like loops</li>
    <li>      tgsi_to_nir: Translate TGSI_INTERPOLATE_COLOR as INTERP_MODE_NONE</li>
    <li>      iris: Fix fence leak in iris_fence_flush</li>
    <li>      st/nine: Ignore D3DSIO_RET if it is the last instruction in a shader</li>
    <li>      intel/compiler: Fix C++ one definition rule violations</li>
    <li>      glsl: Initialize all fields of ir_variable in constructor</li>
    <li>      i965: Unify CC_STATE and BLEND_STATE atoms on Haswell as a workaround</li>
    <p></p>
    <p>Dave Airlie (75):</p>
    <li>      virgl: drop unused format field</li>
    <li>      virgl: fix format conversion for recent gallium changes.</li>
    <li>      gallivm: fix atomic compare-and-swap</li>
    <li>      llvmpipe: refactor jit type creation</li>
    <li>      gallivm: make lp_build_float_to_r11g11b10 take a const src</li>
    <li>      gallivm: handle helper invocation (v2)</li>
    <li>      gallivm: move first/last level jit texture members.</li>
    <li>      llvmpipe: handle early test property.</li>
    <li>      gallivm: add a basic image limit</li>
    <li>      llvmpipe: move the fragment shader variant key to dynamic length.</li>
    <li>      draw: add jit image type for vs/gs images.</li>
    <li>      llvmpipe: introduce image jit type to fragment shader jit.</li>
    <li>      gallivm/tgsi: add image interface to tgsi builder</li>
    <li>      gallivm: add image load/store/atomic support</li>
    <li>      draw: add vs/gs images support</li>
    <li>      llvmpipe: add fragment shader image support</li>
    <li>      llvmpipe: bind vertex/geometry shader images</li>
    <li>      gallivm: add support for fences api on older llvm</li>
    <li>      gallivm: add memory barrier support</li>
    <li>      llvmpipe: flush on api memorybarrier.</li>
    <li>      llvmpipe: enable ARB_shader_image_load_store</li>
    <li>      docs: add shader image extensions for llvmpipe</li>
    <li>      gallivm: fix appveyor build after images changes</li>
    <li>      gallivm: disable accurate cube corner for integer textures.</li>
    <li>      llvmpipe: enable fb no attach</li>
    <li>      gallivm/flow: add counter reset for loops</li>
    <li>      gallivm: add coroutine support files to gallivm.</li>
    <li>      gallivm: add coroutine pass manager support</li>
    <li>      llvmpipe: reogranise jit pointer ordering</li>
    <li>      gallivm: add new compute related intrinsics</li>
    <li>      gallivm: add support for compute shared memory</li>
    <li>      llvmpipe: add compute threadpool + mutex</li>
    <li>      gallivm: add barrier support for compute shaders.</li>
    <li>      llvmpipe: introduce compute shader context</li>
    <li>      llvmpipe: add initial compute state structs</li>
    <li>      gallivm: add compute jit interface.</li>
    <li>      llvmpipe: add compute debug option</li>
    <li>      llvmpipe: add initial shader create/bind/destroy variants framework.</li>
    <li>      llvmpipe: introduce new state dirty tracking for compute.</li>
    <li>      llvmpipe: introduce variant building infrastrucutre.</li>
    <li>      llvmpipe: add compute shader generation.</li>
    <li>      llvmpipe: add grid launch</li>
    <li>      llvmpipe: add compute pipeline statistics support.</li>
    <li>      llvmpipe: add support for compute constant buffers.</li>
    <li>      llvmpipe: add compute sampler + sampler view support.</li>
    <li>      llvmpipe: add ssbo support to compute shaders</li>
    <li>      llvmpipe: add compute shader images support</li>
    <li>      llvmpipe: add compute shader parameter fetching support</li>
    <li>      llvmpipe: add local memory allocation path</li>
    <li>      llvmpipe: enable compute shaders if LLVM has coroutines</li>
    <li>      docs: add llvmpipe features for fb_no_attach and compute shaders</li>
    <li>      st/mesa: Prefer R8 for bitmap textures</li>
    <li>      st/mesa: fix R8 bitmap texture for TGSI paths.</li>
    <li>      llvmpipe: make texture buffer offset alignment == 16</li>
    <li>      llvmpipe/draw: fix image sizes for vertex/geometry shaders.</li>
    <li>      llvmpipe/draw: handle UBOs that are &lt; 16 bytes.</li>
    <li>      gallivm/sample: add gather component selection to the key.</li>
    <li>      gallium: add a a new cap for changing the TGSI TG4 instruction encoding</li>
    <li>      st/glsl: add support for alternate TG4 encoding.</li>
    <li>      llvmpipe: add support for tg4 component selection.</li>
    <li>      gallivm: fix coroutines on aarch64 with llvm 8</li>
    <li>      gallivm/draw/swr: make the gs_iface not depend on tgsi.</li>
    <li>      nir: add a pass to lower flat shading.</li>
    <li>      gallium: add flatshade lowering capability</li>
    <li>      st/mesa: handling lower flatshading for NIR drivers.</li>
    <li>      llvmpipe: handle compute shader launch with 0 threads</li>
    <li>      zink: ask for flatshade lowering</li>
    <li>      zink: add dri loader</li>
    <li>      zink: query support (v2)</li>
    <li>      zink/spirv: store all values as uint.</li>
    <li>      zink: add support for compressed formats</li>
    <li>      zink: add sample mask support</li>
    <li>      zink: add samples to rasterizer</li>
    <li>      zink: attempt to get multisample resource creation right</li>
    <li>      llvmpipe/ppc: fix if/ifdef confusion in backport.</li>
    <p></p>
    <p>Dave Stevenson (1):</p>
    <li>      broadcom/v3d: Allow importing linear BOs with arbitrary offset/stride.</li>
    <p></p>
    <p>Duncan Hopkins (7):</p>
    <li>      zink: clamped limits to INT_MAX when stored as uint32_t.</li>
    <li>      zink: fix line-width calculation</li>
    <li>      zink: respect ubo buffer alignment requirement</li>
    <li>      zink: limited uniform buffer size so the limits is not exceeded.</li>
    <li>      zink: pass line width from rast_state to gfx_pipeline_state.</li>
    <li>      zink: Use optimal layout instead of general. Reduces valid layer warnings. Fixes RADV image noise.</li>
    <li>      zink: make sure src image is transfer-src-optimal</li>
    <p></p>
    <p>Dylan Baker (120):</p>
    <li>      docs: Mark 19.2.0-rc2 as done and push back rc3 and rc4/final</li>
    <li>      glsl/tests: Handle windows \r\n new lines</li>
    <li>      meson: don&#x27;t try to generate i18n translations on windows</li>
    <li>      meson: Make shared-glapi a combo</li>
    <li>      meson: don&#x27;t build glapi_static_check_table on windows</li>
    <li>      add a git ignore for subprojects</li>
    <li>      meson: add a zlib subproject</li>
    <li>      meson: add a expat subproject</li>
    <li>      glapi: export glapi_destroy_multithread when building shared-glapi on windows</li>
    <li>      meson: fix dl detection on non cygwin windows</li>
    <li>      meson: build getopt when using msvc</li>
    <li>      meson: Add a platform for windows</li>
    <li>      meson: don&#x27;t build glx or dri by default on windows</li>
    <li>      meson: don&#x27;t allow glvnd on windows</li>
    <li>      meson: don&#x27;t generate file into subdirs</li>
    <li>      Docs: mark that 19.2.0-rc3 has been released</li>
    <li>      scons: Make scons and meson agree about path to glapi generated headers</li>
    <li>      docs: Add release notes for 19.2.0</li>
    <li>      docs: add SHA256 sum for 19.2.0</li>
    <li>      docs: update calendar, add news item, and link release notes for 19.2.0</li>
    <li>      release: Push 19.3 back two weeks</li>
    <li>      bin/get-pick-list: use --oneline=pretty instead of --oneline</li>
    <li>      meson: fix logic for generating .pc files with old glvnd</li>
    <li>      meson: Try finding libxvmcw via pkg-config before using find_library</li>
    <li>      meson: Link xvmc with libxv</li>
    <li>      meson: gallium media state trackers require libdrm with x11</li>
    <li>      docs: update install docs for meson</li>
    <li>      docs: use https for mesonbuild.com</li>
    <li>      docs: remove stray newline</li>
    <li>      meson: remove -DGALLIUM_SOFTPIPE from st/osmesa</li>
    <li>      docs: Add use of Closes: tag for closing gitlab issues</li>
    <li>      docs: add a new_features.text file and remove 19.3.0 release notes</li>
    <li>      scripts: Add a gen_release_notes.py script</li>
    <li>      release: Add an update_release_calendar.py script</li>
    <li>      bin: delete unused releasing scripts</li>
    <li>      meson: Only error building gallium video without libdrm when the platform is drm</li>
    <li>      docs: Add relnotes for 19.2.1</li>
    <li>      docs: Add SHA256 sum for 19.2.1</li>
    <li>      docs: update calendar, add news item, and link release notes for 19.2.1</li>
    <li>      util: use _WIN32 instead of WIN32</li>
    <li>      meson: add windows compiler checks and libraries</li>
    <li>      meson: Add windows defines to glapi</li>
    <li>      meson: Add necessary defines for mesa_gallium on windows</li>
    <li>      meson: build gallium gdi winsys</li>
    <li>      meson: build wgl state tracker</li>
    <li>      meson: build libgl-gdi target</li>
    <li>      meson: build graw-gdi target</li>
    <li>      meson: fix gallium-osmesa to build for windows</li>
    <li>      meson: Don&#x27;t check for posix_memalign on windows</li>
    <li>      util/xmlconfig: include strndup.h for windows</li>
    <li>      meson: fix pipe-loader compilation for windows</li>
    <li>      meson: don&#x27;t look for rt on windows</li>
    <li>      meson: Add support for using win_flex and win_bison on windows</li>
    <li>      meson: force inclusion of inttypes.h for glcpp with msvc</li>
    <li>      meson: disable sse4.1 optimizations with msvc</li>
    <li>      meson: add switches for SWR with MSVC</li>
    <li>      meson: don&#x27;t define USE_ELF_TLS for windows</li>
    <li>      meson: Add idep_getopt for tests</li>
    <li>      meson: Add msvc compat args to util/tests</li>
    <li>      meson: Set visibility and compat args for graw</li>
    <li>      meson: don&#x27;t build gallium trivial tests on windows</li>
    <li>      meson: disable graw tests on mingw</li>
    <li>      meson: don&#x27;t build or run mesa-sha1 test on windows</li>
    <li>      meson: maintain names of shared API libraries</li>
    <li>      meson: add msvc compat args to swr</li>
    <li>      meson: don&#x27;t error on formaters with mingw</li>
    <li>      meson: only build timspec test if timespec is available</li>
    <li>      meson: glcpp tests are expected to fail on windows</li>
    <li>      meson/util: Don&#x27;t run string_buffer tests on mingw</li>
    <li>      glsl/tests: Handle no-exec errors</li>
    <li>      docs: update meson docs for windows</li>
    <li>      appveyor: Add support for meson as well as scons on windows</li>
    <li>      gitlab-ci: Add a mingw x86_64 job</li>
    <li>      meson: Don&#x27;t use expat on windows</li>
    <li>      gitlab-ci: Add a pkg-config for mingw</li>
    <li>      Revert &quot;gitlab-ci: Disable meson-mingw32-x86_64 job again for now&quot;</li>
    <li>      gitlab-ci: Set the meson wrapmode to disabled</li>
    <li>      appveyor: Cache meson&#x27;s wrap downloads</li>
    <li>      meson/llvmpipe: Add dep_llvm to driver_swrast</li>
    <li>      meson: Add support for wrapping llvm</li>
    <li>      meson: Use cmake to find LLVM when building for windows</li>
    <li>      docs: update meson docs for windows</li>
    <li>      appveyor: Add support for building llvmpipe with meson</li>
    <li>      appveyor: Move appveyor script into .appveyor directory</li>
    <li>      docs: Add new feature for compiling for windows with meson</li>
    <li>      meson: Require meson &gt;= 0.49.1 when using icc or icl</li>
    <li>      scons: Use print_function ins SConstruct</li>
    <li>      scons: Print a deprecation warning about using scons on not windows</li>
    <li>      scons: Also print a deprecation warning on windows</li>
    <li>      docs: Add release not about scons deprecation</li>
    <li>      docs: Add release notes for 19.2.2</li>
    <li>      docs: Add sha256 sum for 19.2.2</li>
    <li>      docs: update calendar, add news item and link release notes for 19.2.2</li>
    <li>      bin/gen_release_notes.py: fix conditional of bugfix</li>
    <li>      bin/gen_release_notes.py: strip &#x27;#&#x27; from gitlab bugs</li>
    <li>      bin/gen_release_notes.py: Return &quot;None&quot; if there are no new features</li>
    <li>      bin/post_version.py: Pass version as an argument</li>
    <li>      bin/post_version.py: white space fixes</li>
    <li>      bin/post_release.py: Add .html to hrefs</li>
    <li>      bin/gen_release_notes.py: html escape all external data</li>
    <li>      bin/gen_release_notes.py: Add a warning if new features are introduced in a point release</li>
    <li>      docs: update releasing process to use new scripts and gitlab</li>
    <li>      nir: Fix invalid code for MSVC</li>
    <li>      gitlab-ci: refactor out some common stuff for Windows and Linux</li>
    <li>      gitlab-ci: Add a job for meson on windows</li>
    <li>      VERSION: bump to rc1</li>
    <li>      nir: correct use of identity check in python</li>
    <li>      meson: Add dep_glvnd to egl deps when building with glvnd</li>
    <li>      Bump VERSION to 19.3.0-rc2</li>
    <li>      cherry-ignore: Update for 19.3-rc3 cycle</li>
    <li>      Bump version for -rc3</li>
    <li>      cherry-ignore: update for 19.3.0-rc4 cycle</li>
    <li>      VERSION: bump for 19.3.0-rc4</li>
    <li>      VERSION: Bump version for -rc5</li>
    <li>      VERSION: bump version for 19.3-rc6</li>
    <li>      cherry-ignore: update for 19.3-rc7</li>
    <li>      meson/broadcom: libbroadcom_cle needs expat headers</li>
    <li>      meson/broadcom: libbroadcom_cle also needs zlib</li>
    <li>      Revert &quot;egl: avoid local modifications for eglext.h Khronos standard header file&quot;</li>
    <li>      Revert &quot;egl: move #include of local headers out of Khronos headers&quot;</li>
    <p></p>
    <p>Eduardo Lima Mitev (4):</p>
    <li>      nir: Add new texop nir_texop_tex_prefetch</li>
    <li>      freedreno/ir3: Add a NIR pass to select tex instructions eligible for pre-fetch</li>
    <li>      nir: Add a new ALU nir_op_imad24_ir3</li>
    <li>      freedreno/ir3: Handle newly added opcode nir_op_imad24_ir3</li>
    <p></p>
    <p>Emil Velikov (3):</p>
    <li>      mesa: bump version to 19.3.0-devel</li>
    <li>      docs: add 19.3.0-devel release notes template</li>
    <li>      docs: update calendar for 19.2.x</li>
    <p></p>
    <p>Eric Anholt (57):</p>
    <li>      gallium: Add a block depth field to the u_formats table.</li>
    <li>      gallium: Add block depth to the format utils.</li>
    <li>      gallium: Add the ASTC 3D formats.</li>
    <li>      gallium: Fix mesa format name in unit test failure path.</li>
    <li>      gallium: Skip generating the pack/unpack union if we don&#x27;t use it.</li>
    <li>      gallium: Drop the useless union wrapper on pack/unpack.</li>
    <li>      gallium: Drop a bit of dead code from the pack/unpack python.</li>
    <li>      gallium: Fix big-endian addressing of non-bitmask array formats.</li>
    <li>      gallium: Don&#x27;t emit identical endian-dependent pack/unpack code.</li>
    <li>      freedreno/a6xx: Fix non-mipmap filtering selection.</li>
    <li>      freedreno: Fix the type of single-component scaled vertex attrs.</li>
    <li>      gallium/osmesa: Introduce a test.</li>
    <li>      gallium/osmesa: Fix a race in creating the stmgr.</li>
    <li>      gallium/osmesa: Move 565 format selection checks where the rest are.</li>
    <li>      uapi: Update drm_fourcc.h</li>
    <li>      dri: Use DRM_FORMAT_* instead of defining our own copy.</li>
    <li>      gitlab-ci: Disable dEQP&#x27;s watchdog timer.</li>
    <li>      gitlab-ci: Log the driver version that got tested.</li>
    <li>      freedreno: Introduce gitlab-based CI.</li>
    <li>      gitlab-ci/a630: Disable flappy layout_binding.ssbo.fragment_binding_array</li>
    <li>      egl/android: Fix build since the DRI fourcc removal.</li>
    <li>      gitlab-ci/a630: Drop remaining dEQP-GLES3.functional.draw.random.* xfails.</li>
    <li>      gitlab-ci/a630: Drop the MSAA expected failure.</li>
    <li>      gitlab-ci: Make the test job fail when bugs are unexpectedly fixed.</li>
    <li>      freedreno: Fix invalid read when a block has no instructions.</li>
    <li>      freedreno/a3xx: Mostly fix min-vs-mag filtering decisions on non-mipmap tex.</li>
    <li>      shader_enums: Move MAX_DRAW_BUFFERS to this file.</li>
    <li>      turnip: Add a .editorconfig and .dir-locals.el</li>
    <li>      turnip: Silence compiler warning about uninit pipeline.</li>
    <li>      turnip: Fix failure behavior of vkCreateGraphicsPipelines.</li>
    <li>      vc4: Enable the nir_opt_algebraic_late() pass.</li>
    <li>      v3d: Enable the late algebraic optimizations to get real subs.</li>
    <li>      nir: Make nir_search&#x27;s dumping go to stderr.</li>
    <li>      nir: Skip emitting no-op movs from the builder.</li>
    <li>      nir: Keep the range analysis HT around intra-pass until we make a change.</li>
    <li>      nir: Factor out most of the algebraic passes C code to .c/.h.</li>
    <li>      nir: Fix some wonky whitespace in nir_search.h.</li>
    <li>      turnip: Drop unused tu_pack_clear_value() return.</li>
    <li>      turnip: Fill in clear color packing for r10g11b11 and rgb9e5.</li>
    <li>      turnip: Tell spirv_to_nir that we want fragcoord as a sysval.</li>
    <li>      turnip: Set up the correct tiling mode for small attachments.</li>
    <li>      turnip: Emit clears of gmem using linear.</li>
    <li>      freedreno/ci: Ban texsubimage2d_pbo.r16ui_2d, due to two flakes reported.</li>
    <li>      mesa: Add debug info to _mesa_format_from_format_and_type() error path.</li>
    <li>      mesa: Fix depth/stencil ordering in _mesa_format_from_format_and_type().</li>
    <li>      mesa: Add format/type matching for DEPTH/UINT_24_8.</li>
    <li>      mesa: Add support for array formats of depth and stencil.</li>
    <li>      mesa: Refactor the entirety of _mesa_format_matches_format_and_type().</li>
    <li>      v3d: Add Compute Shader support</li>
    <li>      r100/r200: factor out txformat/txfilter setup from the TFP path.</li>
    <li>      radeon: Fill in the TXOFFSET field containing the tile bits in our relocs.</li>
    <li>      radeon: Drop the unused first arg of OUT_BATCH_RELOC.</li>
    <li>      mesa: Replace the LA16_UNORM packed formats with one array format.</li>
    <li>      mesa: Replace MESA_FORMAT_L8A8/A8L8 UNORM/SNORM/SRGB with an array format.</li>
    <li>      gallium: Drop the unused PIPE_FORMAT_A*L* formats.</li>
    <li>      mesa: Redefine the RG formats as array formats.</li>
    <li>      ci: Disable lima until its farm can get fixed.</li>
    <p></p>
    <p>Eric Engestrom (104):</p>
    <li>      scons: define MESA_LLVM_VERSION_STRING like the other build systems do</li>
    <li>      llvmpipe: use LLVM version string instead of re-computing it</li>
    <li>      swr: use LLVM version string instead of re-computing it</li>
    <li>      scons: add support for MAJOR_IN_{MKDEV,SYSMACROS}</li>
    <li>      egl: warn user if they set an invalid EGL_PLATFORM</li>
    <li>      ttn: fix 64-bit shift on 32-bit `1`</li>
    <li>      egl: fix deadlock in malloc error path</li>
    <li>      util/os_file: fix double-close()</li>
    <li>      anv: fix format string in error message</li>
    <li>      freedreno/drm-shim: fix mem leak</li>
    <li>      nir: fix memleak in error path</li>
    <li>      gallivm: replace `0x` version print with actual version string</li>
    <li>      meson/scons/android: add LLVM_AVAILABLE binary flag</li>
    <li>      aux/draw: replace binary HAVE_LLVM checks with LLVM_AVAILABLE</li>
    <li>      r600: replace binary HAVE_LLVM checks with LLVM_AVAILABLE</li>
    <li>      svga: replace binary HAVE_LLVM checks with LLVM_AVAILABLE</li>
    <li>      amd: replace major llvm version checks with LLVM_VERSION_MAJOR</li>
    <li>      swr: replace major llvm version checks with LLVM_VERSION_MAJOR</li>
    <li>      gallivm: replace major llvm version checks with LLVM_VERSION_MAJOR</li>
    <li>      clover: replace major llvm version checks with LLVM_VERSION_MAJOR</li>
    <li>      gallivm: replace more complex 3.x version check with LLVM_VERSION_MAJOR/MINOR</li>
    <li>      clover: replace more complex 3.x version check with LLVM_VERSION_MAJOR/MINOR</li>
    <li>      llvmpipe: replace more complex 3.x version check with LLVM_VERSION_MAJOR/MINOR</li>
    <li>      meson/scons/android: drop now-unused HAVE_LLVM</li>
    <li>      gallivm: drop LLVM&lt;3.3 code paths as no build system allows that</li>
    <li>      anv: add support for driconf</li>
    <li>      wsi: add minImageCount override</li>
    <li>      anv: add support for vk_x11_override_min_image_count</li>
    <li>      amd: move adaptive sync to performance section, as it is defined in xmlpool</li>
    <li>      radv: add support for vk_x11_override_min_image_count</li>
    <li>      drirc: override minImageCount=2 for gfxbench</li>
    <li>      meson/iris: replace partial list of nir dep files with idep_nir_headers</li>
    <li>      meson/v3d: replace partial list of nir dep files with idep_nir_headers</li>
    <li>      gitlab-ci: rename stages to something simpler</li>
    <li>      gl: drop incorrect pkg-config file for glvnd</li>
    <li>      anv: split instance dispatch table</li>
    <li>      anv: implement ICD interface v4</li>
    <li>      meson: split compiler warnings one per line</li>
    <li>      radv: fix s/load/store/ copy-paste typo</li>
    <li>      meson: drop -Wno-foo bug workaround for Meson &lt; 0.46</li>
    <li>      meson: split more compiler options to their own line</li>
    <li>      meson: re-add incorrect pkg-config files with GLVND for backward compatibility</li>
    <li>      docs/release-calendar: fix bugfix release numbers</li>
    <li>      docs/release-calendar: add missing &lt;td&gt; and &lt;/td&gt;</li>
    <li>      glsl: turn runtime asserts of compile-time value into compile-time asserts</li>
    <li>      etnaviv: fix bitmask typo</li>
    <li>      docs/install: drop autotools references</li>
    <li>      git: delete .gitattributes</li>
    <li>      egl: replace MESA_EGL_NO_X11_HEADERS hack with upstream EGL_NO_X11</li>
    <li>      loader: replace int/1/0 with bool/true/false</li>
    <li>      loader: s/int/bool/ for predicate result</li>
    <li>      loader: use ARRAY_SIZE instead of NULL sentinel</li>
    <li>      meson/loader: drop unneeded *.h file</li>
    <li>      script: drop get_reviewer.pl</li>
    <li>      meson: add missing idep_nir_headers in iris_gen_libs</li>
    <li>      meson: use idep_nir instead of libnir in libnouveau</li>
    <li>      meson: use idep_nir instead of libnir in libclnir</li>
    <li>      meson: use idep_nir instead of libnir in gallium nine</li>
    <li>      meson: use idep_nir instead of libnir in haiku softpipe</li>
    <li>      meson: use idep_nir instead of libnir in pipe-loader</li>
    <li>      meson: rename libnir to _libnir to make it clear it&#x27;s not meant to be used anywhere else</li>
    <li>      meson: drop duplicate inc_nir from libiris</li>
    <li>      meson: drop duplicate inc_nir from libglsl</li>
    <li>      meson: drop duplicate inc_nir from spirv2nir</li>
    <li>      meson: drop unused inc_nir</li>
    <li>      include: update drm-uapi</li>
    <li>      meson: fix sys/mkdev.h detection on Solaris</li>
    <li>      GL: drop symbols mangling support</li>
    <li>      meson: rename `glvnd_missing_pc_files` to `not glvnd_has_headers_and_pc_files`</li>
    <li>      meson: move a couple of include installs around</li>
    <li>      meson: split headers one per line</li>
    <li>      meson: split Mesa headers as a separate installation</li>
    <li>      meson: skip installation of GLVND-provided headers</li>
    <li>      symbols-check: ignore exported C++ symbols</li>
    <li>      anv: add exported symbols check</li>
    <li>      radv: add exported symbols check</li>
    <li>      gbm: turn 0/-1 bool into true/false</li>
    <li>      gbm: replace 1/0 bool with true/false</li>
    <li>      gbm: replace NULL sentinel with explicit ARRAY_SIZE()</li>
    <li>      gbm: use size_t for array indexes</li>
    <li>      gitlab-ci: set a common job parent for container stage</li>
    <li>      gitlab-ci: set a common job parent for build stage</li>
    <li>      gitlab-ci: set a common job parent for test stage</li>
    <li>      mesa/math: delete leftover... from 18 years ago (!)</li>
    <li>      mesa/math: delete duplicate extern symbol</li>
    <li>      util/u_atomic: fix return type of p_atomic_{inc,dec}_return() and p_atomic_{cmp,}xchg()</li>
    <li>      travis: don&#x27;t (re)install python</li>
    <li>      travis: test meson install as well</li>
    <li>      osmesa: add missing #include &lt;stdint.h&gt;</li>
    <li>      llvmpipe: avoid compiling no-op block on release builds</li>
    <li>      llvmpipe: avoid generating empty-body blocks</li>
    <li>      meson: add -Werror=empty-body to disallow `if(x);`</li>
    <li>      anv: fix error message</li>
    <li>      anv: fix empty-body instruction</li>
    <li>      radv: fix empty-body instruction</li>
    <li>      v3d: fix empty-body instruction</li>
    <li>      tu: fix empty-body instruction</li>
    <li>      anv: add a couple printflike() annotations</li>
    <li>      loader: default to iris for all future PCI IDs</li>
    <li>      travis: fix scons build after deprecation warning</li>
    <li>      meson: define _GNU_SOURCE on FreeBSD</li>
    <li>      egl: fix _EGL_NATIVE_PLATFORM fallback</li>
    <li>      egl: move #include of local headers out of Khronos headers</li>
    <li>      vulkan: delete typo&#x27;d header</li>
    <p></p>
    <p>Erico Nunes (7):</p>
    <li>      lima: fix ppir spill stack allocation</li>
    <li>      lima/ppir: lower selects to scalars</li>
    <li>      lima/ppir: enable vectorize optimization</li>
    <li>      lima/ppir: mark regalloc created ssa unspillable</li>
    <li>      lima/ppir: optimizations in regalloc spilling code</li>
    <li>      lima/ppir: improve regalloc spill cost calculation</li>
    <li>      lima: remove partial clear support from pipe-&gt;clear()</li>
    <p></p>
    <p>Erik Faye-Lund (210):</p>
    <li>      gallium/auxiliary/indices: consistently apply start only to input</li>
    <li>      mesa/main: remove unused include</li>
    <li>      util: fix SSE-version needed for double opcodes</li>
    <li>      util: do not assume MSVC implies SSE</li>
    <li>      mesa/x86: improve SSE-checks for MSVC</li>
    <li>      util: only allow _BitScanReverse64 on 64-bit cpus</li>
    <li>      gallium/gdi: use GALLIUM_FOO rather than HAVE_FOO</li>
    <li>      st/mesa: remove always-true expression</li>
    <li>      .mailmap: add an alias for Michel Dänzer</li>
    <li>      .mailmap: add an alias for Eric Engestrom</li>
    <li>      .mailmap: add an alias for Bas Nieuwenhuizen</li>
    <li>      .mailmap: add an alias for Frank Binns</li>
    <li>      glsl: correct bitcast-helpers</li>
    <li>      loader/dri3: do not blit outside old/new buffers</li>
    <li>      .mailmap: specify spelling for Elie Tournier</li>
    <li>      .mailmap: add an alias for Alexandros Frantzis</li>
    <li>      .mailmap: add an alias for Gert Wollny</li>
    <li>      .mailmap: add an alias for Tomeu Vizoso</li>
    <li>      .mailmap: add a couple of aliases for Jakob Bornecrantz</li>
    <li>      nir: initialize uses_discard to false</li>
    <li>      nir: initialize needs_helper_invocations as well</li>
    <li>      mesa/main: prefer R8-textures instead of A8 for glBitmap in display lists</li>
    <li>      gallium/u_blitter: set a more sane viewport-state</li>
    <li>      mesa: expose alpha-ref as a state-variable</li>
    <li>      nir: allow passing alpha-ref state to lowering-code</li>
    <li>      mesa/gallium: automatically lower alpha-testing</li>
    <li>      st/mesa: move point_size_per_vertex-logic to helper</li>
    <li>      nir: add lowering-pass for point-size mov</li>
    <li>      mesa/gallium: automatically lower point-size</li>
    <li>      nir: support derefs in two-sided lighting lowering</li>
    <li>      mesa/gallium: automatically lower two-sided lighting</li>
    <li>      nir: support lowering clipdist to arrays</li>
    <li>      nir: support feeding state to nir_lower_clip_[vg]s</li>
    <li>      mesa/program: support referencing the clip-space clip-plane state</li>
    <li>      mesa/st: support lowering user-clip-planes automatically</li>
    <li>      panfrost: do not report alpha-test as supported</li>
    <li>      vc4: do not report alpha-test as supported</li>
    <li>      v3d: do not report alpha-test as supported</li>
    <li>      nir: drop support for using load_alpha_ref_float</li>
    <li>      nir: drop unused alpha_ref_float</li>
    <li>      mesa/st: assert that lowering is supported</li>
    <li>      Revert &quot;nir: drop unused alpha_ref_float&quot;</li>
    <li>      Revert &quot;nir: drop support for using load_alpha_ref_float&quot;</li>
    <li>      Revert &quot;v3d: do not report alpha-test as supported&quot;</li>
    <li>      Revert &quot;vc4: do not report alpha-test as supported&quot;</li>
    <li>      zink: introduce opengl over vulkan</li>
    <li>      zink: detect presence of VK_KHR_maintenance1</li>
    <li>      zink/spirv: implement point-sprites</li>
    <li>      zink: transform z-range</li>
    <li>      zink: remove discard_if</li>
    <li>      zink/spirv: implement some integer ops</li>
    <li>      zink/spirv: handle reading registers</li>
    <li>      zink/spirv: prepare for control-flow</li>
    <li>      zink/spirv: implement if-statements</li>
    <li>      zink/spirv: implement discard</li>
    <li>      zink/spirv: implement loops</li>
    <li>      zink: prepare for caching of renderpases/framebuffers</li>
    <li>      zink: move render-pass begin to helper</li>
    <li>      zink: do not leak image-views</li>
    <li>      zink: move cmdbuf-resetting into a helper</li>
    <li>      zink: prepare for multiple cmdbufs</li>
    <li>      zink: pass zink_render_pass to pipeline-creation</li>
    <li>      zink: cache programs</li>
    <li>      zink: move renderpass inside gfx pipeline state</li>
    <li>      zink: cache those pipelines</li>
    <li>      zink: reference renderpass and framebuffer from cmdbuf</li>
    <li>      zink: return old fence from zink_flush</li>
    <li>      zink: reference vertex and index buffers</li>
    <li>      zink: reference ubos and textures</li>
    <li>      zink: wait for idle on context-destroy</li>
    <li>      zink: whitespace cleanup</li>
    <li>      zink: reference blit/copy-region resources</li>
    <li>      zink: add curr_cmdbuf-helper</li>
    <li>      zink: delete samplers after the current cmdbuf</li>
    <li>      zink: texture-rects?</li>
    <li>      zink: store shader_info in zink_shader</li>
    <li>      zink: implement fmod</li>
    <li>      zink: track used resources</li>
    <li>      zink: do not destroy staging-resource, deref it</li>
    <li>      zink: use uvec for undefs</li>
    <li>      zink: emit dedicated block for variables</li>
    <li>      zink: ensure non-fragment shaders use lod-versions of texture</li>
    <li>      zink: ensure textures are transitioned properly</li>
    <li>      zink: assign increasing locations to varyings</li>
    <li>      zink: move primitive-topology stuff into program</li>
    <li>      zink: tweak state handling</li>
    <li>      zink: remove unusual alignment</li>
    <li>      zink: return after blitting</li>
    <li>      zink: implement batching</li>
    <li>      zink: simplify renderpass/framebuffer logic a tad</li>
    <li>      zink: cache render-passes</li>
    <li>      zink: cache framebuffers</li>
    <li>      zink: more batch-ism</li>
    <li>      zink: use helper</li>
    <li>      zink: fixup parameter name</li>
    <li>      zink: ensure sampler-views survive a batch</li>
    <li>      zink: remove hack-comment</li>
    <li>      zink: clean up render-pass management</li>
    <li>      zink: rename sampler-view destroy function</li>
    <li>      zink: pass screen instead of device to program-functions</li>
    <li>      zink: keep a reference to used render-passes</li>
    <li>      zink: prepare for shadow-samplers</li>
    <li>      zink: kill dead code</li>
    <li>      zink: clamp scissors</li>
    <li>      zink: do not use hash-table for regs</li>
    <li>      zink: squashme: forward declare hash_table</li>
    <li>      zink: squashme: trade cplusplus wrapper for header-guard</li>
    <li>      zink: fix off-by-one in assert</li>
    <li>      zink: reuse constants</li>
    <li>      zink: pool descriptors per batch</li>
    <li>      zink: request alpha-test lowering</li>
    <li>      zink/spirv: var -&gt; regs</li>
    <li>      zink/spirv: rename vec_type</li>
    <li>      zink: do not lower io</li>
    <li>      zink: request ucp-lowering</li>
    <li>      zink: cleanup zink_end_batch</li>
    <li>      zink: drop unused argument</li>
    <li>      zink: refactor fence destruction</li>
    <li>      zink: only consider format-desc if checking details</li>
    <li>      zink: document end-of-frame hack</li>
    <li>      zink: use pipe_stencil_ref instead of uint32_t-array</li>
    <li>      zink: store sampler and image_view counts</li>
    <li>      zink: save original scissor and viewport</li>
    <li>      zink: save all supported util_blitter states</li>
    <li>      zink: process one aspect-mask bit at the time</li>
    <li>      zink: clean up opcode-emitting a bit</li>
    <li>      zink: add some opcodes</li>
    <li>      zink: add division ops</li>
    <li>      zink: add shift ops</li>
    <li>      zink: implement ineg</li>
    <li>      zink: more comparison-ops</li>
    <li>      zink: more converts</li>
    <li>      zink: add more compares</li>
    <li>      zink: crash hard on unknown queries</li>
    <li>      zink: abort on submit-failure</li>
    <li>      zink: stub resource_from_handle</li>
    <li>      zink: make sure imageExtent.depth is 1 for arrays</li>
    <li>      zink/spirv: correct opcode</li>
    <li>      zink: support more texturing</li>
    <li>      zink: wait for transfer when reading</li>
    <li>      zink/spirv: be a bit more strict with fragment-results</li>
    <li>      zink/spirv: debug-print unknown varying slots</li>
    <li>      zink: ensure layout is reasonable before copying</li>
    <li>      zink: fixup: save rasterizer</li>
    <li>      zink: set ExecutionModeDepthReplacing when depth is written</li>
    <li>      zink: avoid texelFetch until it&#x27;s implemented</li>
    <li>      zink: remove insecure comment</li>
    <li>      zink: don&#x27;t crash when setting rast-state to NULL</li>
    <li>      zink: add note about enabling PIPE_CAP_CLIP_HALFZ</li>
    <li>      zink/spirv: always enable Sampled1D for fragment shaders</li>
    <li>      zink: do not use both depth and stencil aspects for sampler-views</li>
    <li>      zink/spirv: support vec1 coordinates</li>
    <li>      zink: fixup boolean queries</li>
    <li>      zink: disable timestamp-queries</li>
    <li>      zink: move set_active_query_state-stub to zink_query.c</li>
    <li>      HACK: zink: suspend / resume queries on batch-boundaries</li>
    <li>      zink: also accept txl</li>
    <li>      zink: use primconvert to get rid of 8-bit indices</li>
    <li>      zink: initialize nr_samples for pipe_surface</li>
    <li>      zink: fix rendering to 3D-textures</li>
    <li>      zink: support shadow-samplers</li>
    <li>      zink: disable PIPE_CAP_QUERY_TIME_ELAPSED for now</li>
    <li>      zink: add missing sRGB DXT-formats</li>
    <li>      zink: lower point-size</li>
    <li>      zink/spirv: use ordered compares</li>
    <li>      zink/spirv: implement f2b1</li>
    <li>      zink/spirv: assert bit-size</li>
    <li>      zink/spirv: implement bcsel</li>
    <li>      zink/spirv: implement bitwise ops</li>
    <li>      zink/spirv: implement b2i32</li>
    <li>      zink/spirv: implement emit_select helper</li>
    <li>      zink/spirv: implement emit_float_const helper</li>
    <li>      zink/spirv: use bit_size instead of hard-coding</li>
    <li>      zink/spirv: add emit_bitcast-helper</li>
    <li>      zink/spirv: add emit_uint_const-helper</li>
    <li>      zink/spirv: inline get_uvec_constant into emit_load_const</li>
    <li>      zink/spirv: clean up get_[fu]vec_constant</li>
    <li>      zink/spirv: fixup b2i32 and implement b2f32</li>
    <li>      zink/spirv: prepare for 1-bit booleans</li>
    <li>      zink: do not lower bools to float</li>
    <li>      zink/spirv: fixup b2i32</li>
    <li>      zink/spirv: implement load_front_face</li>
    <li>      zink/spirv: alias generic varyings on non-generic ones</li>
    <li>      zink: lower two-sided coloring</li>
    <li>      zink/spirv: alias var0 on tex0 etc instead</li>
    <li>      zink: do not set VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT for non-3D textures</li>
    <li>      zink: use VK_FORMAT_B8G8R8A8_UNORM for PIPE_FORMAT_B8G8R8X8_UNORM</li>
    <li>      zink: implement resource_from_handle</li>
    <li>      zink: refactor blitting</li>
    <li>      zink: fixup return-value</li>
    <li>      zink: pass screen to zink_create_gfx_pipeline</li>
    <li>      zink: do not set lineWidth to invalid value</li>
    <li>      zink: fixup scissoring</li>
    <li>      zink/spirv: more complete sampler-dim handling</li>
    <li>      zink: simplify gl-to-vulkan lowering</li>
    <li>      gitlab-ci: also build Zink on CI</li>
    <li>      gitlab-ci: fixup debian tags</li>
    <li>      zink: error if VK_KHR_maintenance1 isn&#x27;t supported</li>
    <li>      zink: emulate optional depth-formats</li>
    <li>      st/mesa: lower global vars to local after lowering clip</li>
    <li>      zink: use dynamic state for line-width</li>
    <li>      zink: use bitfield for dirty flagging</li>
    <li>      zink: drop nop descriptor-updates</li>
    <li>      zink: only enable KHR_external_memory_fd if supported</li>
    <li>      zink: emit line-width when using polygon line-mode</li>
    <li>      zink: use actual format for render-pass</li>
    <li>      zink: always allow mutating the format</li>
    <li>      zink: do not advertize coherent mapping</li>
    <li>      zink: disable fragment-shader texture-lod</li>
    <li>      zink: correct depth-stencil format</li>
    <p></p>
    <p>Francisco Jerez (56):</p>
    <li>      intel/fs: Teach fs_inst::is_send_from_grf() about some missing send-like instructions.</li>
    <li>      intel/fs: Define is_payload() method of the IR instruction class.</li>
    <li>      intel/fs: Define is_send() convenience IR helper.</li>
    <li>      intel/fs: Fix constness of implied_mrf_writes() argument.</li>
    <li>      intel/eu: Split brw_inst ex_desc accessors for SEND(C) vs. SENDS(C).</li>
    <li>      intel/eu: Fix up various type conversions in brw_eu.c that are illegal C++.</li>
    <li>      intel/eu: Rework opcode description tables to allow efficient look-up by either HW or IR opcode.</li>
    <li>      intel/eu: Encode and decode native instruction opcodes from/to IR opcodes.</li>
    <li>      intel/ir: Drop hard-coded correspondence between IR and HW opcodes.</li>
    <li>      intel/ir: Represent physical and logical subsets of the CFG.</li>
    <li>      intel/ir: Add helper function to push block onto CFG analysis stack.</li>
    <li>      intel/ir: Represent logical edge of BREAK instruction.</li>
    <li>      intel/ir: Represent physical edge of ELSE instruction.</li>
    <li>      intel/ir: Represent physical edge of unconditional CONTINUE instruction.</li>
    <li>      intel/eu/gen12: Extend brw_inst.h macros for Gen12 support.</li>
    <li>      intel/eu/gen12: Add sanity-check asserts to brw_inst_bits() and brw_inst_set_bits().</li>
    <li>      intel/eu/gen12: Implement basic instruction binary encoding.</li>
    <li>      intel/eu/gen12: Implement three-source instruction binary encoding.</li>
    <li>      intel/eu/gen12: Implement control flow instruction binary encoding.</li>
    <li>      intel/eu/gen12: Implement SEND instruction binary encoding.</li>
    <li>      intel/eu/gen12: Implement indirect region binary encoding.</li>
    <li>      intel/eu/gen12: Implement compact instruction binary encoding.</li>
    <li>      intel/eu/gen12: Implement datatype binary encoding.</li>
    <li>      intel/eu/gen11+: Mark dot product opcodes as unsupported on opcode_descs table.</li>
    <li>      intel/eu/gen12: Add Gen12 opcode descriptions to the table.</li>
    <li>      intel/eu/gen12: Fix codegen of immediate source regions.</li>
    <li>      intel/eu/gen12: Codegen three-source instruction source and destination regions.</li>
    <li>      intel/eu/gen12: Codegen control flow instructions correctly.</li>
    <li>      intel/eu/gen12: Codegen pathological SEND source and destination regions.</li>
    <li>      intel/eu/gen12: Codegen SEND descriptor regions correctly.</li>
    <li>      intel/eu/gen12: Use SEND instruction for split sends.</li>
    <li>      intel/eu/gen12: Don&#x27;t set DD control, it&#x27;s gone.</li>
    <li>      intel/eu/gen12: Don&#x27;t set thread control, it&#x27;s gone.</li>
    <li>      intel/ir/gen12: Add SYNC hardware instruction.</li>
    <li>      intel/fs/gen12: Add codegen support for the SYNC instruction.</li>
    <li>      intel/eu/gen12: Add auxiliary type to represent SWSB information during codegen.</li>
    <li>      intel/eu/gen12: Add tracking of default SWSB state to the current brw_codegen instruction.</li>
    <li>      intel/eu/gen12: Set SWSB annotations in hand-crafted assembly.</li>
    <li>      intel/fs/gen12: Add scheduling information to the IR.</li>
    <li>      intel/fs/gen12: Introduce software scoreboard lowering pass.</li>
    <li>      intel/fs/gen12: Demodernize software scoreboard lowering pass.</li>
    <li>      intel/disasm/gen12: Disassemble software scoreboard information.</li>
    <li>      intel/disasm/gen12: Fix disassembly of some common instruction controls.</li>
    <li>      intel/disasm/gen12: Disassemble three-source instruction source and destination regions.</li>
    <li>      intel/disasm/gen12: Disassemble Gen12 SYNC instruction.</li>
    <li>      intel/disasm/gen12: Disassemble Gen12 SEND instructions.</li>
    <li>      intel/disasm: Don&#x27;t disassemble saturate control on SEND instructions.</li>
    <li>      intel/disasm: Disassemble register file of split SEND sources.</li>
    <li>      intel/fs/gen12: Don&#x27;t support source mods for 32x16 integer multiply.</li>
    <li>      intel/eu/validate/gen12: Implement integer multiply restrictions in EU validator.</li>
    <li>      intel/eu/validate/gen12: Fix validation of SYNC instruction.</li>
    <li>      intel/eu/validate/gen12: Validation fixes for SEND instruction.</li>
    <li>      intel/ir/gen12: Update assert in brw_stage_has_packed_dispatch().</li>
    <li>      intel/eu: Don&#x27;t set notify descriptor field of gateway barrier message.</li>
    <li>      intel/fs/gen12: Fix barrier codegen.</li>
    <li>      intel/fs/gen11+: Fix CS_OPCODE_CS_TERMINATE codegen.</li>
    <p></p>
    <p>Fritz Koenig (5):</p>
    <li>      include/GLES2: Sync GLES2 headers with Khronos</li>
    <li>      mesa: GetFramebufferParameteriv spelling</li>
    <li>      mesa: Allow MESA_framebuffer_flip_y for GLES 3</li>
    <li>      gallium: Enable MESA_framebuffer_flip_y</li>
    <li>      freedreno: reorder format check</li>
    <p></p>
    <p>Gert Wollny (4):</p>
    <li>      radeonsi: Release storage for smda_uploads when the context is destroyed</li>
    <li>      etnaviv: enable triangle strips only when the hardware supports it</li>
    <li>      r600: Fix interpolateAtCentroid</li>
    <li>      r600: Disable eight bit three channel formats</li>
    <p></p>
    <p>Greg V (1):</p>
    <li>      clover: use iterator_range in get_kernel_nodes</li>
    <p></p>
    <p>Gurchetan Singh (4):</p>
    <li>      virgl: remove stride from virgl_hw_res</li>
    <li>      virgl: modify resource_create_from_handle(..) callback</li>
    <li>      virgl: modify internal structures to track winsys-supplied data</li>
    <li>      virgl: honor winsys supplied metadata</li>
    <p></p>
    <p>Haihao Xiang (1):</p>
    <li>      i965: support AYUV/XYUV for external import only</li>
    <p></p>
    <p>Hal Gentz (11):</p>
    <li>      glx: Fix SEGV due to dereferencing a NULL ptr from XCB-GLX.</li>
    <li>      clover: Fix build after clang r370122.</li>
    <li>      gallium/osmesa: Fix the inability to set no context as current.</li>
    <li>      egl: Add EGL_CONFIG_SELECT_GROUP_MESA ext.</li>
    <li>      egl: Fixes transparency with EGL and X11.</li>
    <li>      egl: Puts RGBA visuals in the second config selection group.</li>
    <li>      egl: Configs w/o double buffering support have no `EGL_WINDOW_BIT`.</li>
    <li>      Revert &quot;egl: Configs w/o double buffering support have no `EGL_WINDOW_BIT`.&quot;</li>
    <li>      Revert &quot;egl: Puts RGBA visuals in the second config selection group.&quot;</li>
    <li>      Revert &quot;egl: Fixes transparency with EGL and X11.&quot;</li>
    <li>      Revert &quot;egl: Add EGL_CONFIG_SELECT_GROUP_MESA ext.&quot;</li>
    <p></p>
    <p>Heinrich Fink (8):</p>
    <li>      include: sync GL headers with registry</li>
    <li>      specs: Sync framebuffer_flip_y text with GL registry</li>
    <li>      headers: remove redundant GL token from GL wrapper</li>
    <li>      specs: Add GL_MESA_EGL_sync</li>
    <li>      registry: update gl.xml with GL_MESA_EGL_sync token</li>
    <li>      headers: Add GL_MESA_EGL_sync token to GL</li>
    <li>      egl: Add GL_MESA_EGL_sync support</li>
    <li>      mesa/gl: Sync with Khronos registry</li>
    <p></p>
    <p>Hyunjun Ko (3):</p>
    <li>      freedreno/ir3: Add data structures to support texture pre-fetch</li>
    <li>      freedreno/ir3: Add support for texture sampling pre-dispatch</li>
    <li>      freedreno/ir3: fix printing output registers of FS.</li>
    <p></p>
    <p>Iago Toral (1):</p>
    <li>      v3d: drop unused shader_rec_count member from context</li>
    <p></p>
    <p>Iago Toral Quiroga (13):</p>
    <li>      prog_to_nir: VARYING_SLOT_PSIZ is a scalar</li>
    <li>      gallium/ttn: VARYING_SLOT_PSIZ and VARYING_SLOT_FOGC are scalar</li>
    <li>      nir/lower_point_size: assume scalar PSIZ</li>
    <li>      v3d: add missing line break for performance debug message</li>
    <li>      v3d: make sure we have enough space in the CL for the primitive counts packet</li>
    <li>      v3d: remove redundant update of queued draw calls</li>
    <li>      v3d: fix TF primitive counts for resume without draw</li>
    <li>      mesa/main: GL_GEOMETRY_SHADER_INVOCATIONS exists in GL_OES_geometry_shader</li>
    <li>      v3d: trivial update to obsolete comment</li>
    <li>      v3d: add new flag dirty TMU cache at v3d_compiler</li>
    <li>      broadcom: document known hardware issues for L2T flush command</li>
    <li>      v3d: request the kernel to flush caches when TMU is dirty</li>
    <li>      st/mesa: only require ESSL 3.1 for geometry shaders</li>
    <p></p>
    <p>Ian Romanick (22):</p>
    <li>      nir/algrbraic: Don&#x27;t optimize open-coded bitfield reverse when lowering is enabled</li>
    <li>      intel/compiler: Request bitfield_reverse lowering on pre-Gen7 hardware</li>
    <li>      nir/algebraic: Mark some value range analysis-based optimizations imprecise</li>
    <li>      nir/algebraic: Clean up value range analysis-based optimizations</li>
    <li>      nir/range-analysis: Adjust result range of exp2 to account for flush-to-zero</li>
    <li>      nir/range-analysis: Adjust result range of multiplication to account for flush-to-zero</li>
    <li>      nir/range-analysis: Fix incorrect fadd range result for (ne_zero, ne_zero)</li>
    <li>      nir/range-analysis: Handle constants in nir_op_mov just like nir_op_bcsel</li>
    <li>      nir/range-analysis: Range tracking for fpow</li>
    <li>      nir/range-analysis: Add a lot more assertions about the contents of tables</li>
    <li>      nir/algebraic: Do not apply late DPH optimization in vertex processing stages</li>
    <li>      nir/algebraic: Additional D3D Boolean optimization</li>
    <li>      nir/range-analysis: Bail if the types don&#x27;t match</li>
    <li>      nir/range-analysis: Use types in the hash key</li>
    <li>      nir/range-analysis: Use types to provide better ranges from bcsel and mov</li>
    <li>      nir/search: Fix possible NULL dereference in is_fsign</li>
    <li>      intel/vec4: Don&#x27;t try both sources as immediates for DPH</li>
    <li>      intel/compiler: Report the number of non-spill/fill SEND messages on vec4 too</li>
    <li>      nir/algebraic: Add the ability to mark a replacement as exact</li>
    <li>      nir/algebraic: Mark other comparison exact when removing a == a</li>
    <li>      intel/fs: Disable conditional discard optimization on Gen4 and Gen5</li>
    <li>      intel/compiler: Fix &#x27;comparison is always true&#x27; warning</li>
    <p></p>
    <p>Icenowy Zheng (4):</p>
    <li>      lima: reset scissor state if scissor test is disabled</li>
    <li>      lima: fix PLBU viewport configuration</li>
    <li>      lima: support rectangle texture</li>
    <li>      lima: do not set the PP uniforms address lowest bits</li>
    <p></p>
    <p>Ilia Mirkin (6):</p>
    <li>      gallium/vl: use compute preference for all multimedia, not just blit</li>
    <li>      teximage: ensure that Tex*SubImage* checks format</li>
    <li>      gallium/tgsi: add support for DEMOTE and READ_HELPER opcodes</li>
    <li>      nvc0: add support for GL_EXT_demote_to_helper_invocation</li>
    <li>      gm107/ir: fix loading z offset for layered 3d image bindings</li>
    <li>      nv50/ir: mark STORE destination inputs as used</li>
    <p></p>
    <p>Illia Iorin (2):</p>
    <li>      Revert &quot;mesa/main: Fix multisample texture initialize&quot;</li>
    <li>      mesa/main: Ignore filter state for MS texture completeness</li>
    <p></p>
    <p>Indrajit Das (1):</p>
    <li>      radeon/vcn: exclude raven2 from vcn 2.0 encode initialization</li>
    <p></p>
    <p>James Xiong (5):</p>
    <li>      gallium: simplify throttle implementation</li>
    <li>      gallium: rename PIPE_CAP_MAX_FRAMES_IN_FLIGHT to PIPE_CAP_THROTTLE</li>
    <li>      iris: finish aux import on get_param</li>
    <li>      gallium: do not increase ref count of the new throttle fence</li>
    <li>      iris: try to set the specified tiling when importing a dmabuf</li>
    <p></p>
    <p>Jan Beich (6):</p>
    <li>      gallium/hud: add CPU usage support for DragonFly/NetBSD/OpenBSD</li>
    <li>      util: skip NEON detection if built with -mfpu=neon</li>
    <li>      util: detect NEON at runtime on FreeBSD</li>
    <li>      util: skip AltiVec detection if built with -maltivec</li>
    <li>      util: detect AltiVec at runtime on BSDs</li>
    <li>      util: simplify BSD includes</li>
    <p></p>
    <p>Jan Zielinski (3):</p>
    <li>      swr/rasterizer: Enable ARB_fragment_layer_viewport</li>
    <li>      swr/rasterizer: Fix GS attributes processing</li>
    <li>      gallium/swr: Fix depth values for blit scenario</li>
    <p></p>
    <p>Jason Ekstrand (57):</p>
    <li>      nir: Add explicit signs to image min/max intrinsics</li>
    <li>      intel/nir: Add a helper for getting BRW_AOP from an intrinsic</li>
    <li>      v3d: Use the correct opcodes for signed image min/max</li>
    <li>      intel/fs: Drop the gl_program from fs_visitor</li>
    <li>      intel/fs: Fix FB write inst groups</li>
    <li>      Revert &quot;intel/fs: Move the scalar-region conversion to the generator.&quot;</li>
    <li>      anv: Bump maxComputeWorkgroupSize</li>
    <li>      intel/tools: Decode 3DSTATE_BINDING_TABLE_POINTERS on SNB</li>
    <li>      intel/tools: Decode PS kernels on SNB</li>
    <li>      blorp: Memset surface info to zero when initializing it</li>
    <li>      intel/blorp: Expose surf_retile_w_to_y internally</li>
    <li>      intel/blorp: Expose surf_fake_interleaved_msaa internally</li>
    <li>      intel/blorp: Use wide formats for nicely aligned stencil clears</li>
    <li>      nir: Handle complex derefs in nir_split_array_vars</li>
    <li>      nir: Don&#x27;t infinitely recurse in lower_ssa_defs_to_regs_block</li>
    <li>      nir: Add a block_is_unreachable helper</li>
    <li>      nir/repair_ssa: Repair dominance for unreachable blocks</li>
    <li>      nir/repair_ssa: Insert deref casts when needed</li>
    <li>      nir/dead_cf: Repair SSA if the pass makes progress</li>
    <li>      intel/fs: Handle UNDEF in split_virtual_grfs</li>
    <li>      vulkan: Update the XML and headers to 1.1.123</li>
    <li>      Move blob from compiler/ to util/</li>
    <li>      util/rb_tree: Add the unit tests</li>
    <li>      util/rb_tree: Reverse the order of comparison functions</li>
    <li>      intel/fs: Allow UB, B, and HF types in brw_nir_reduction_op_identity</li>
    <li>      intel/fs: Allow CLUSTER_BROADCAST to do type conversion</li>
    <li>      intel/fs: Do 8-bit subgroup scan operations in 16 bits</li>
    <li>      anv: Advertise VK_KHR_shader_subgroup_extended_types</li>
    <li>      nir/repair_ssa: Replace the unreachable check with the phi builder</li>
    <li>      util/rb_tree: Replace useless ifs with asserts</li>
    <li>      util/rb_tree: Also test _safe iterators</li>
    <li>      util/rb_tree: Stop relying on &amp;iter-&gt;field != NULL</li>
    <li>      intel/fs: Fix fs_inst::flags_read for ANY/ALL predicates</li>
    <li>      anv/pipeline: Capture serialized NIR</li>
    <li>      intel/eu/validate/gen12: Don&#x27;t blow up on indirect src0.</li>
    <li>      intel/fs/gen12: Implement gl_FrontFacing on gen12+.</li>
    <li>      intel/genxml: Remove W-tiling on gen12</li>
    <li>      intel/isl: Select Y-tiling for stencil on gen12</li>
    <li>      intel/isl: Add isl_aux_usage_has_ccs</li>
    <li>      spirv/info: Add a memorymodel_to_string helper</li>
    <li>      Revert &quot;mapi: Inline call x86_current_tls.&quot;</li>
    <li>      intel/blorp: Use surf instead of aux_surf for image dimensions</li>
    <li>      intel/isl: Add new aux modes available on gen12</li>
    <li>      intel/isl/fill_state: Separate aux_mode handling from aux_surf</li>
    <li>      intel/isl: Update surf_fill_state for gen12</li>
    <li>      intel/isl: Support HIZ_CCS in emit_depth_stencil_hiz</li>
    <li>      anv: Delay allocation of relocation lists</li>
    <li>      anv: Reduce the minimum number of relocations</li>
    <li>      intel/vec4: Set brw_stage_prog_data::has_ubo_pull</li>
    <li>      anv: Avoid emitting UBO surface states that won&#x27;t be used</li>
    <li>      anv: Fix a potential BO handle leak</li>
    <li>      anv/tests: Zero-initialize instances</li>
    <li>      anv: Set the batch allocator for compute pipelines</li>
    <li>      anv: Stop bounds-checking pushed UBOs</li>
    <li>      anv: Set up SBE_SWIZ properly for gl_Viewport</li>
    <li>      anv: Re-emit all compute state on pipeline switch</li>
    <li>      anv: Don&#x27;t leak when set_tiling fails</li>
    <p></p>
    <p>Jean Hertel (1):</p>
    <li>      Fix missing dri2_load_driver on platform_drm</li>
    <p></p>
    <p>Jiadong Zhu (1):</p>
    <li>      mesa: fix texStore for FORMAT_Z32_FLOAT_S8X24_UINT</li>
    <p></p>
    <p>Jiang, Sonny (1):</p>
    <li>      loader: always map the &quot;amdgpu&quot; kernel driver name to radeonsi (v2)</li>
    <p></p>
    <p>John Stultz (1):</p>
    <li>      Android.mk: Fix missing \ from recent llvm change</li>
    <p></p>
    <p>Jon Turney (2):</p>
    <li>      Fix timespec_from_nsec test for 32-bit time_t</li>
    <li>      rbug: Fix use of alloca() without #include &quot;c99_alloca.h&quot;</li>
    <p></p>
    <p>Jonathan Gray (3):</p>
    <li>      mapi: Adapted libglvnd x86 tsd changes</li>
    <li>      winsys/amdgpu: avoid double simple_mtx_unlock()</li>
    <li>      i965: update Makefile.sources for perf changes</li>
    <p></p>
    <p>Jonathan Marek (90):</p>
    <li>      freedreno/a2xx: ir2: fix lowering of instructions after float lowering</li>
    <li>      freedreno/a2xx: ir2: remove pointcoord y invert</li>
    <li>      freedreno/a2xx: ir2: set lower_fdph</li>
    <li>      freedreno/a2xx: ir2: fix saturate in cp</li>
    <li>      freedreno/a2xx: ir2: check opcode on the right instruction in export cp</li>
    <li>      freedreno/a2xx: ir2: fix incorrect instruction reordering</li>
    <li>      freedreno/a2xx: ir2: update register state in scalar insert</li>
    <li>      freedreno/a2xx: fix SRC_ALPHA_SATURATE for alpha blend function</li>
    <li>      freedreno/a2xx: implement polygon offset</li>
    <li>      freedreno/a2xx: fix depth gmem restore</li>
    <li>      freedreno/a2xx: formats update</li>
    <li>      u_format: add ETC2 to util_format_srgb/util_format_linear</li>
    <li>      u_format: float type for R11G11B10_FLOAT/R9G9B9E5_FLOAT</li>
    <li>      etnaviv: fix two-sided stencil</li>
    <li>      turnip: fix binning shader compilation</li>
    <li>      turnip: use image tile_mode for gmem configuration</li>
    <li>      turnip: emit shader immediates</li>
    <li>      turnip: fix vertex_id</li>
    <li>      turnip: implement sampler state</li>
    <li>      turnip: implement image view descriptor</li>
    <li>      turnip: use linear tiling for scanout image</li>
    <li>      turnip: align layer_size</li>
    <li>      turnip: enable linear filtering</li>
    <li>      turnip: basic descriptor sets (uniform buffer and samplers)</li>
    <li>      turnip: lower samplers and uniform buffer indices</li>
    <li>      turnip: use nir_opt_copy_prop_vars</li>
    <li>      turnip: add some shader information in pipeline state</li>
    <li>      turnip: emit texture and uniform state</li>
    <li>      etnaviv: nir: fix gl_FrontFacing</li>
    <li>      etnaviv: nir: allocate contiguous components for LOAD destination</li>
    <li>      etnaviv: nir: set num_components for inputs/outputs</li>
    <li>      qetnaviv: nir: use new immediates when possible</li>
    <li>      etnaviv: nir: add native integers (HALTI2+)</li>
    <li>      etnaviv: nir: use store_deref instead of store_output</li>
    <li>      etnaviv: nir: remove &quot;options&quot; struct</li>
    <li>      etnaviv: remove extra allocation for shader code</li>
    <li>      etnaviv: nir: make lower_alu easier to follow</li>
    <li>      etnaviv: disable earlyZ when shader writes fragment depth</li>
    <li>      etnaviv: nir: fix gl_FragDepth</li>
    <li>      etnaviv: update headers from rnndb</li>
    <li>      etnaviv: implement texture comparator</li>
    <li>      etnaviv: set texture INT_FILTER bit</li>
    <li>      etnaviv: clear texture cache and flush ts when texture is modified</li>
    <li>      etnaviv: get addressing mode from tiling layout</li>
    <li>      etnaviv: rework compatible render base</li>
    <li>      etnaviv: rework etna_resource_create tiling choice</li>
    <li>      freedreno/ir3: remove input ncomp field</li>
    <li>      freedreno/ir3: increase size of inputs/outputs arrays</li>
    <li>      freedreno/ir3: implement fdd{x,y}_coarse opcodes</li>
    <li>      freedreno/ir3: fix GETLOD for negative LODs</li>
    <li>      freedreno/ir3: implement texop_texture_samples</li>
    <li>      freedreno/ir3: implement fquantize2f16</li>
    <li>      freedreno/regs: update a6xx 2d blit bits</li>
    <li>      turnip: fix triangle strip</li>
    <li>      turnip: fix 32 vertex attributes case</li>
    <li>      turnip: fix segmentation fault in events</li>
    <li>      turnip: fix segmentation fault with compute pipeline</li>
    <li>      turnip: fix assert failing for 0 color attachments</li>
    <li>      turnip: add astc format layout</li>
    <li>      turnip: add format_is_uint/format_is_sint</li>
    <li>      turnip: format table fixes</li>
    <li>      turnip: add more 2d_ifmt translations</li>
    <li>      turnip: improve view descriptor</li>
    <li>      turnip: improve sampler descriptor</li>
    <li>      turnip: add black border color</li>
    <li>      turnip: add VK_KHR_sampler_mirror_clamp_to_edge</li>
    <li>      turnip: update setup_slices</li>
    <li>      turnip: disable tiling as necessary</li>
    <li>      turnip: add anisotropy and compressed formats to device features</li>
    <li>      turnip: update some shader state bits from GL driver</li>
    <li>      turnip: fixup consts</li>
    <li>      turnip: add code to lower indirect samplers</li>
    <li>      turnip: add missing nir passes</li>
    <li>      turnip: use nir_assign_io_var_locations instead of nir_assign_var_locations</li>
    <li>      turnip: improve CmdCopyImage and implement CmdBlitImage</li>
    <li>      turnip: basic msaa working</li>
    <li>      turnip: depth/stencil</li>
    <li>      turnip: push constants</li>
    <li>      turnip: more descriptor sets</li>
    <li>      spirv: set correct dest_type for texture query ops</li>
    <li>      etnaviv: fix linear_nearest / nearest_linear filters on GC7000Lite</li>
    <li>      etnaviv: fix TS samplers on GC7000L</li>
    <li>      etnaviv: check NO_ASTC feature bit</li>
    <li>      freedreno/a2xx: use sysval for pointcoord</li>
    <li>      freedreno/a2xx: add missing vertex formats (SSCALE/USCALE/FIXED)</li>
    <li>      etnaviv: fix depth bias</li>
    <li>      etnaviv: stencil fix</li>
    <li>      etnaviv: fix non-pointsprite points on GC7000L</li>
    <li>      freedreno/ir3: disable texture prefetch for 1d array textures</li>
    <li>      freedreno/registers: fix a6xx_2d_blit_cntl ROTATE</li>
    <p></p>
    <p>Jordan Justen (42):</p>
    <li>      intel/genxml: Handle field names with different spacing/hyphen</li>
    <li>      intel/genxml/gen11: Add spaces in EnableUnormPathInColorPipe</li>
    <li>      intel/genxml: Run sort_xml.sh to tidy gen9.xml and gen11.xml</li>
    <li>      intel/genxml: Add gen12.xml as a copy of gen11.xml</li>
    <li>      intel/genxml: Build gen12 genxml</li>
    <li>      intel/isl: Build gen12 using gen11 code paths</li>
    <li>      intel/compiler: Disable compaction on gen12 for now</li>
    <li>      intel/l3: Don&#x27;t assert on gen12 (use gen11 config temporarily)</li>
    <li>      iris: Build for gen12</li>
    <li>      anv: Build for gen12</li>
    <li>      i965: Exit with error if gen12+ is detected</li>
    <li>      pci_id_driver_map: Support preferring iris over i965</li>
    <li>      anv,iris: L3ALLOC register replaces L3CNTLREG for gen12</li>
    <li>      iris/state: Move reg/mem load/store functions earlier in file</li>
    <li>      intel/ir: Lower fpow on Gen12.</li>
    <li>      intel/genxml,isl: Add gen12 render surface state changes</li>
    <li>      intel/genxml,isl: Add gen12 depth buffer changes</li>
    <li>      intel/genxml,isl: Add gen12 stencil buffer changes</li>
    <li>      intel/isl: Add gen12 depth/stencil surface alignments</li>
    <li>      iris: Let isl decide the supported tiling in more situations</li>
    <li>      intel/isl: Add R10G10B10_FLOAT_A2_UNORM format</li>
    <li>      iris/resource: Use isl surface alignment during bo allocation</li>
    <li>      intel/common: Add interface to allocate device buffers</li>
    <li>      anv: Implement aux-map allocator interface</li>
    <li>      intel/common: Add surface to aux map translation table support</li>
    <li>      anv/gen12: Initialize aux map context</li>
    <li>      genxml/gen12: Add AUX MAP register definitions</li>
    <li>      anv/gen12: Write GFX_AUX_TABLE base address register</li>
    <li>      iris/bufmgr: Initialize aux map context for gen12</li>
    <li>      isl/gen12: 64k surface alignment</li>
    <li>      iris: Map each surf to it&#x27;s aux-surf in the aux-map tables</li>
    <li>      iris/gen12: Write GFX_AUX_TABLE base address register</li>
    <li>      iris: Mark aux-map BO as used by all batches</li>
    <li>      intel: Update alignment restrictions for HiZ surfaces.</li>
    <li>      iris: Set MOCS for external surfaces to uncached</li>
    <li>      intel/genxml: Add gen12 tile cache flush bit</li>
    <li>      intel/dev: Add preliminary device info for Tigerlake</li>
    <li>      intel/eu/validate/gen12: Add TGL to eu_validate tests.</li>
    <li>      docs/relnotes/new_features.txt: Add note about gen12 support</li>
    <li>      iris: Add IRIS_DIRTY_RENDER_BUFFER state flag</li>
    <li>      iris/gen11+: Move flush for render target change</li>
    <li>      iris: Allow max dynamic pool size of 2GB for gen12</li>
    <p></p>
    <p>Jose Maria Casanova Crespo (5):</p>
    <li>      mesa: recover target_check before get_current_tex_objects</li>
    <li>      v3d: writes to magic registers aren&#x27;t RF writes after THREND</li>
    <li>      v3d: flag dirty state when binding compute states</li>
    <li>      v3d: Explicitly expose OpenGL ES Shading Language 3.1</li>
    <li>      v3d: Fix predication with atomic image operations</li>
    <p></p>
    <p>José Fonseca (5):</p>
    <li>      glx: Fix incompatible function pointer types.</li>
    <li>      util: Prevent implicit declaration of function getenv.</li>
    <li>      util: Prevent strcasecmp macro redefinion.</li>
    <li>      scons: Make GCC builds stricter.</li>
    <li>      scons: Fix force_scons parsing.</li>
    <p></p>
    <p>Juan A. Suarez Romero (14):</p>
    <li>      docs: add release notes for 19.1.5</li>
    <li>      docs: add sha256 checksums for 19.1.5</li>
    <li>      docs: update calendar, add news item and link release notes for 19.1.5</li>
    <li>      docs: add release notes for 19.1.6</li>
    <li>      docs: add sha256 checksums for 19.1.6</li>
    <li>      docs: update calendar, add news item and link release notes for 19.1.6</li>
    <li>      docs: extend 19.1.x releases</li>
    <li>      docs: add release notes for 19.1.7</li>
    <li>      docs: add sha256 checksums for 19.1.7</li>
    <li>      docs: update calendar, add news item and link release notes for 19.1.7</li>
    <li>      bin/get-pick-list.sh: sha1 commits can be smaller than 8 chars</li>
    <li>      docs: add release notes for 19.1.8</li>
    <li>      docs: add release notes for 19.1.8</li>
    <li>      docs: update calendar, add news item and link release notes for 19.1.8</li>
    <p></p>
    <p>Karol Herbst (15):</p>
    <li>      gallium: add blob field to pipe_llvm_program_header</li>
    <li>      rename pipe_llvm_program_header to pipe_binary_program_header</li>
    <li>      clover/functional: add id_equals helper</li>
    <li>      clover: add support for drivers having no proper binary format</li>
    <li>      clover: prepare supporting multiple IRs</li>
    <li>      clover: add support for passing kernels as nir to the driver</li>
    <li>      nvc0: expose spirv support</li>
    <li>      clover/nir: fix compilation with g++-5.5 and maybe earlier</li>
    <li>      nv50/ir: fix unnecessary parentheses warning</li>
    <li>      nv50/ir/nir: comparison of integer expressions of different signedness warning</li>
    <li>      clover/llvm: remove harmful std::move call</li>
    <li>      clover/codegen: remove unused get_symbol_offsets function</li>
    <li>      clover: eliminate &quot;ignoring attributes on template argument&quot; warning</li>
    <li>      st/mesa: fix crash for drivers supporting nir defaulting to tgsi</li>
    <li>      nv50/ir: remove DUMMY edge type</li>
    <p></p>
    <p>Ken Mays (1):</p>
    <li>      haiku: fix Mesa build</li>
    <p></p>
    <p>Kenneth Graunke (86):</p>
    <li>      gallium/ddebug: Wrap resource_get_param if available</li>
    <li>      gallium/trace: Wrap resource_get_param if available</li>
    <li>      gallium/rbug: Wrap resource_get_param if available</li>
    <li>      gallium/noop: Implement resource_get_param</li>
    <li>      iris: Replace devinfo-&gt;gen with GEN_GEN</li>
    <li>      iris: Fix broken aux.possible/sampler_usages bitmask handling</li>
    <li>      iris: Update fast clear colors on Gen9 with direct immediate writes.</li>
    <li>      iris: Drop copy format hacks from copy region based transfer path.</li>
    <li>      iris: Avoid unnecessary resolves on transfer maps</li>
    <li>      iris: Set MOCS in all STATE_BASE_ADDRESS commands</li>
    <li>      iris: Fix large timeout handling in rel2abs()</li>
    <li>      isl: Drop UnormPathInColorPipe for buffer surfaces.</li>
    <li>      isl: Don&#x27;t set UnormPathInColorPipe for integer surfaces.</li>
    <li>      iris: Delete dead prototype</li>
    <li>      intel/compiler: Fix src0/desc setter ordering</li>
    <li>      intel/compiler: Handle bits 15:12 in brw_send_indirect_split_message()</li>
    <li>      intel/compiler: Refactor FB write message control setup into a helper.</li>
    <li>      intel/compiler: Use generic SEND for Gen7+ FB writes</li>
    <li>      intel/compiler: Use new Gen11 headerless RT writes for MRT cases</li>
    <li>      util: Add a _mesa_i64roundevenf() helper.</li>
    <li>      mesa: Fix _mesa_float_to_unorm() on 32-bit systems.</li>
    <li>      iris: Drop swizzling parameter from s8_offset.</li>
    <li>      iris: Don&#x27;t auto-flush/dirty on transfer unmap for coherent buffers</li>
    <li>      iris: Actually describe bo_reuse driconf option</li>
    <li>      iris: Fix partial fast clear checks to account for miplevel.</li>
    <li>      iris: Lessen texture cache hack flush for blits/copies on Icelake.</li>
    <li>      iris: Report correct number of planes for planar images</li>
    <li>      iris: Invalidate state/texture/constant caches after STATE_BASE_ADDRESS</li>
    <li>      intel: Stop redirecting state cache to command streamer cache section</li>
    <li>      iris: Support the disable_throttling=true driconf option.</li>
    <li>      iris: Ignore line stipple information if it&#x27;s disabled</li>
    <li>      iris: Add support for the always_flush_cache=true debug option.</li>
    <li>      iris: Optimize out redundant sampler state binds</li>
    <li>      iris: Avoid flushing for cache history on transfer range flushes</li>
    <li>      iris: Fix constant buffer sizes for non-UBOs</li>
    <li>      gallium: Fix util_format_get_depth_only</li>
    <li>      iris: Finish initializing the BO before stuffing it in the hash table</li>
    <li>      iris: Set bo-&gt;reusable = false in iris_bo_make_external_locked</li>
    <li>      st/mesa: Only pause queries if there are any active queries to pause.</li>
    <li>      iris: trivial whitespace fixes</li>
    <li>      iris: Initialize ice-&gt;state.prim_mode to an invalid value</li>
    <li>      st/mesa: Prefer 5551 formats for GL_UNSIGNED_SHORT_5_5_5_1.</li>
    <li>      st/mesa: Increase GL_POINT_SIZE_RANGE minimum to 1.0</li>
    <li>      intel/compiler: Set &quot;Null Render Target&quot; ex_desc bit on Gen11</li>
    <li>      iris: Skip allocating a null surface when there are 0 color regions.</li>
    <li>      iris: Flag IRIS_DIRTY_BINDINGS_XS on constant buffer rebinds</li>
    <li>      iris: Explicitly emit 3DSTATE_BTP_XS on Gen9 with DIRTY_CONSTANTS_XS</li>
    <li>      iris: Don&#x27;t flag IRIS_DIRTY_BINDINGS for constant usage history</li>
    <li>      iris: Track per-stage bind history, reduce work accordingly</li>
    <li>      intel/compiler: Record whether any pull constant loads occur</li>
    <li>      iris: Avoid uploading SURFACE_STATE descriptors for UBOs if possible</li>
    <li>      iris: Use state_refs for draw parameters.</li>
    <li>      iris: Rework iris_update_draw_parameters to be more efficient</li>
    <li>      iris: Skip double-disabling TCS/TES/GS after BLORP operations</li>
    <li>      isl: Drop WaDisableSamplerL2BypassForTextureCompressedFormats on Gen11</li>
    <li>      st/mesa: Bail on incomplete attachments in discard_framebuffer</li>
    <li>      intel/genxml: Stop manually scrubbing &#x27;α&#x27; -&gt; &quot;alpha&quot;</li>
    <li>      broadcom/genxml: Stop manually scrubbing &#x27;α&#x27; -&gt; &quot;alpha&quot;</li>
    <li>      Revert &quot;intel/gen11+: Enable Hardware filtering of Semi-Pipelined State in WM&quot;</li>
    <li>      intel: Increase Gen11 compute shader scratch IDs to 64.</li>
    <li>      iris: Only resolve for image levels/layers which are actually in use.</li>
    <li>      iris: Disable CCS_E for 32-bit floating point textures.</li>
    <li>      iris: Fix iris_rebind_buffer() for VBOs with non-zero offsets.</li>
    <li>      st/dri: Perform MSAA downsampling for __DRI2_THROTTLE_COPYSUBBUFFER</li>
    <li>      dri: Avoid swapbuffer throttling in glXCopySubBufferMESA</li>
    <li>      iris: Refactor push constant allocation so we can reuse it</li>
    <li>      iris: Hack up a SKL/Gen9LP PS push constant fifo depth workaround</li>
    <li>      Revert &quot;iris: Hack up a SKL/Gen9LP PS push constant fifo depth workaround&quot;</li>
    <li>      iris: Drop bonus parameters from iris_init_*_context()</li>
    <li>      iris: Drop vtbl usage for some load_register calls</li>
    <li>      iris: Update comment about 3-component formats and buffer textures</li>
    <li>      iris: Properly unreference extra VBOs for draw parameters</li>
    <li>      st/mesa: Fix inverted polygon stipple condition</li>
    <li>      iris: Implement the Broadwell NP Z PMA Stall Fix</li>
    <li>      intel/fs/gen12: Use TCS 8_PATCH mode.</li>
    <li>      iris: Implement the Gen &lt; 9 tessellation quads workaround</li>
    <li>      mesa: Use ctx-&gt;ReadBuffer in glReadBuffer back-to-front tests</li>
    <li>      mesa: Make back_to_front_if_single_buffered non-static</li>
    <li>      mesa: Handle pbuffers in desktop GL framebuffer attachment queries</li>
    <li>      intel/compiler: Report the number of non-spill/fill SEND messages</li>
    <li>      st/mesa: Silence chatty debug printf</li>
    <li>      iris: Rework edgeflag handling</li>
    <li>      nir: Use VARYING_SLOT_TESS_MAX to size indirect bitmasks</li>
    <li>      iris: Fix &quot;Force Zero RTA Index Enable&quot; setting again</li>
    <li>      driconf, glsl: Add a vs_position_always_invariant option</li>
    <li>      drirc: Set vs_position_always_invariant for Shadow of Mordor on Intel</li>
    <p></p>
    <p>Kevin Strasser (14):</p>
    <li>      drm-uapi: Update headers for fp16 formats</li>
    <li>      i965: Add helper function for allowed config formats</li>
    <li>      gallium: Use consistent approach for config format filtering</li>
    <li>      dri: Add config attributes for color channel shift</li>
    <li>      util: move bitcount to bitscan.h</li>
    <li>      egl: Convert configs to use shifts and sizes instead of masks</li>
    <li>      glx: Add fields for color shifts</li>
    <li>      dri: Handle configs with floating point pixel data</li>
    <li>      egl: Handle dri configs with floating point pixel data</li>
    <li>      dri: Add fp16 formats</li>
    <li>      gbm: Add buffer handling and visuals for fp16 formats</li>
    <li>      i965: Add handling for fp16 configs</li>
    <li>      gallium: Add buffer and configs handling or fp16 formats</li>
    <li>      egl: Fix implicit declaration of ffs</li>
    <p></p>
    <p>Khaled Emara (2):</p>
    <li>      freedreno/a3xx: fix texture tiling parameters</li>
    <li>      freedreno/a3xx: fix sysmem &lt;-&gt; gmem tiles transfer</li>
    <p></p>
    <p>Kristian Høgsberg (40):</p>
    <li>      freedreno/a6xx: Let the GPU track streamout offsets</li>
    <li>      freedreno/a6xx: Implement primitive count queries on GPU</li>
    <li>      freedreno/a6xx: Track location of gl_Position out as we link it</li>
    <li>      freedreno/a6xx: Share shader state constructor and destructor</li>
    <li>      freedreno/a6xx: Turn on vectorize_io</li>
    <li>      freedreno/a6xx: Write multiple regs for SP_VS_OUT_REG and SP_VS_VPC_DST_REG</li>
    <li>      freedreno/regs: Fix CP_DRAW_INDX_OFFSET command</li>
    <li>      freedreno/regs: A couple of tess updates</li>
    <li>      freedreno/a6xx: Factor out const state setup</li>
    <li>      freedreno: Rename vp and fp to vs and fs in fd_program_stateobj</li>
    <li>      freedreno: Add state binding functions for HS/DS/GS</li>
    <li>      freedreno: Move fs functions after geometry pipeline stages</li>
    <li>      freedreno/a6xx: Add generic program stateobj support for HS/DS/GS</li>
    <li>      freedreno/ir3: Add HS/DS/GS to shader key and cache</li>
    <li>      freedreno/a6xx: Emit const and texture state for HS/DS/GS</li>
    <li>      freedreno/a6xx: Move instrlen and obj_start writes to fd6_emit_shader</li>
    <li>      freedreno/registers: Update with GS, HS and DS registers</li>
    <li>      freedreno/a6xx: Trim a few regs from fd6_emit_restore()</li>
    <li>      freedreno/ir3: Add support for CHSH and CHMASK instructions</li>
    <li>      freedreno/ir3: Use third register for offset for LDL and LDLV</li>
    <li>      freedreno/ir3: Extend RA with mechanism for pre-coloring registers</li>
    <li>      freedreno/ir3: Add new LDLW/STLW instructions</li>
    <li>      freedreno/ir3: Add intrinsics that map to LDLW/STLW</li>
    <li>      freedreno/a6xx: Add missing adjacency primitives to table</li>
    <li>      freedreno/ir3: Add has_gs flag to shader key</li>
    <li>      freedreno/ir3: Implement lowering passes for VS and GS</li>
    <li>      freedreno/ir3: Implement primitive layout intrinsics</li>
    <li>      freedreno/ir3: Setup ir3 inputs and outputs for GS</li>
    <li>      freedreno/ir3: Pre-color GS header and primitive ID</li>
    <li>      freedreno/ir3: Start GS with (ss) and (sy)</li>
    <li>      freedreno/ir3: End VS with CHMASK and CHSH in GS pipelines</li>
    <li>      freedreno/a6xx: Emit program state for GS</li>
    <li>      freedreno/a6xx: Support layered render targets</li>
    <li>      st/mesa: Also enable GS when ESSLVersion &gt; 320</li>
    <li>      freedreno/blitter: Save GS state</li>
    <li>      freedreno/a6xx: Implement PIPE_QUERY_PRIMITIVES_GENERATED for GS</li>
    <li>      freedreno/ci: Add failing tests to skip list</li>
    <li>      freedreno/a6xx: Turn on geometry shaders</li>
    <li>      nir: Use BITSET for tracking varyings in lower_io_arrays</li>
    <li>      freedreno/a6xx: Disable geometry shaders for release</li>
    <p></p>
    <p>Krzysztof Raszkowski (2):</p>
    <li>      util: Add unreachable() definition for clang compiler.</li>
    <li>      gallium/swr: Enable GL_ARB_gpu_shader5: multiple streams</li>
    <p></p>
    <p>Laurent Carlier (1):</p>
    <li>      egl: avoid local modifications for eglext.h Khronos standard header file</li>
    <p></p>
    <p>Leo Liu (3):</p>
    <li>      radeon/vcn: add RENOIR VCN decode support</li>
    <li>      radeon/vcn: Add VP9 8K decode support</li>
    <li>      radeonsi: enable 8K video decode support for HEVC and VP9</li>
    <p></p>
    <p>Lepton Wu (14):</p>
    <li>      st/mesa: Allow zero as [level|layer]_override</li>
    <li>      virgl: Fix pipe_resource leaks under multi-sample.</li>
    <li>      egl/android: Only keep BGRA EGL configs as fallback</li>
    <li>      virgl: replace fprintf with _debug_printf</li>
    <li>      virgl: Remove wrong EAGAIN handling for drmIoctl</li>
    <li>      gbm: Add GBM_MAX_PLANES definition</li>
    <li>      egl/android: Remove our own reference to buffers.</li>
    <li>      virgl: Remove formats with unusual sample count.</li>
    <li>      mapi: Inline call x86_current_tls.</li>
    <li>      mapi: split entry_generate_or_patch for x86 tls</li>
    <li>      mapi: Clean up entry_patch_public for x86 tls</li>
    <li>      mapi: Inline call x86_current_tls.</li>
    <li>      mapi: Improve the x86 tsd stubs performance.</li>
    <li>      gallium: dri2: Use index as plane number.</li>
    <p></p>
    <p>Lionel Landwerlin (59):</p>
    <li>      glsl/tests: take refs on glsl types</li>
    <li>      nir/tests: take reference on glsl types</li>
    <li>      compiler: ensure glsl types are not created without a reference</li>
    <li>      mesa/compiler: rework tear down of builtin/types</li>
    <li>      radeonsi: take reference glsl types for compile threads</li>
    <li>      i965: honor scanout requirement from DRI</li>
    <li>      util/timespec: use unsigned 64 bit integers for nsec values</li>
    <li>      util: fix compilation on macos</li>
    <li>      egl: fix platform selection</li>
    <li>      vulkan/overlay: bounce image back to present layout</li>
    <li>      intel: update product names for WHL</li>
    <li>      radv: store engine name</li>
    <li>      driconfig: add a new engine name/version parameter</li>
    <li>      vulkan: add vk_x11_strict_image_count option</li>
    <li>      util/xmlconfig: fix regexp compile failure check</li>
    <li>      drirc: include unreal engine version 0 to 23</li>
    <li>      anv: gem-stubs: return a valid fd got anv_gem_userptr()</li>
    <li>      intel: use proper label for Comet Lake skus</li>
    <li>      intel: Add new Comet Lake PCI-ids</li>
    <li>      mesa: don&#x27;t forget to clear _Layer field on texture unit</li>
    <li>      intel: fix topology query</li>
    <li>      intel/error2aub: add support for platforms without PPGTT</li>
    <li>      intel: fix subslice computation from topology data</li>
    <li>      intel/isl: Set null surface format to R32_UINT</li>
    <li>      intel/isl: set surface array appropriately</li>
    <li>      intel/isl: set vertical surface alignment on null surfaces</li>
    <li>      etnaviv: remove variable from global namespace</li>
    <li>      anv: fix vkUpdateDescriptorSets with inline uniform blocks</li>
    <li>      anv: fix memory leak on device destroy</li>
    <li>      anv: fix unwind of vkCreateDevice fail</li>
    <li>      intel/perf: add mdapi maker helper</li>
    <li>      intel/perf: expose some utility functions</li>
    <li>      intel/perf: extract register configuration</li>
    <li>      intel/perf: move registers to their own header</li>
    <li>      drm-uapi: Update headers from drm-next</li>
    <li>      intel/perf: add support for querying kernel loaded configurations</li>
    <li>      intel/genxml: add generic perf counters registers</li>
    <li>      intel/genxml: add RPSTAT register for core frequency</li>
    <li>      intel/perf: add mdapi writes for register perf counters</li>
    <li>      anv: implement VK_INTEL_performance_query</li>
    <li>      docs: Add new Intel extension</li>
    <li>      intel/dev: store whether the device uses an aux map tables on devinfo</li>
    <li>      anv: Add aux-map translation for gen12+</li>
    <li>      intel/perf: update ICL configurations</li>
    <li>      intel/dump_gpu: handle context create extended ioctl</li>
    <li>      intel/dev: set default num_eu_per_subslice on gen12</li>
    <li>      mesa: check draw buffer completeness on glClearBufferfi/glClearBufferiv</li>
    <li>      anv: Properly handle host query reset of performance queries</li>
    <li>      mesa: check framebuffer completeness only after state update</li>
    <li>      anv: invalidate file descriptor of semaphore sync fd at vkQueueSubmit</li>
    <li>      anv: remove list items on batch fini</li>
    <li>      anv/wsi: signal the semaphore in the acquireNextImage</li>
    <li>      intel/perf: fix invalid hw_id in query results</li>
    <li>      intel/perf: set read buffer len to 0 to identify empty buffer</li>
    <li>      intel/perf: take into account that reports read can be fairly old</li>
    <li>      intel/perf: simplify the processing of OA reports</li>
    <li>      intel/perf: fix improper pointer access</li>
    <li>      anv: fix missing gen12 handling</li>
    <li>      anv: fix incorrect VMA alignment for CCS main surfaces</li>
    <p></p>
    <p>Lucas Stach (17):</p>
    <li>      etnaviv: fix vertex buffer state emission for single stream GPUs</li>
    <li>      gallium/util: don&#x27;t depend on implementation defined behavior in listen()</li>
    <li>      rbug: fix transmitted texture sizes</li>
    <li>      rbug: unwrap index buffer resource</li>
    <li>      rbug: move flush_resource initialization</li>
    <li>      rbug: implement missing explicit sync related fence functions</li>
    <li>      rbug: forward texture_barrier to pipe driver</li>
    <li>      rbug: forward can_create_resource to pipe driver</li>
    <li>      rbug: implement resource creation with modifier</li>
    <li>      rbug: remove superfluous NULL check</li>
    <li>      etnaviv: keep references to pending resources</li>
    <li>      etnaviv: drm: remove unused etna_cmd_stream_finish</li>
    <li>      etnaviv: rework the stream flush to always go through the context flush</li>
    <li>      etnaviv: drm: add softpin interface</li>
    <li>      etnaviv: check for softpin availability on Halti5 devices</li>
    <li>      etnaviv: add linear texture support on GC7000</li>
    <li>      etnaviv: GC7000: flush TX descriptor and instruction cache</li>
    <p></p>
    <p>Marek Olšák (161):</p>
    <li>      radeonsi/gfx10: fix the legacy pipeline by storing as_ngg in the shader cache</li>
    <li>      radeonsi: move some global shader cache flags to per-binary flags</li>
    <li>      radeonsi/gfx10: fix tessellation for the legacy pipeline</li>
    <li>      radeonsi/gfx10: fix the PRIMITIVES_GENERATED query if using legacy streamout</li>
    <li>      radeonsi/gfx10: create the GS copy shader if using legacy streamout</li>
    <li>      radeonsi/gfx10: add as_ngg variant for VS as ES to select Wave32/64</li>
    <li>      radeonsi/gfx10: fix InstanceID for legacy VS+GS</li>
    <li>      radeonsi/gfx10: don&#x27;t initialize VGT_INSTANCE_STEP_RATE_0</li>
    <li>      radeonsi/gfx10: always use the legacy pipeline for streamout</li>
    <li>      radeonsi/gfx10: finish up Navi14, add PCI ID</li>
    <li>      radeonsi/gfx10: add AMD_DEBUG=nongg</li>
    <li>      winsys/amdgpu+radeon: process AMD_DEBUG in addition to R600_DEBUG</li>
    <li>      radeonsi: add PKT3_CONTEXT_REG_RMW</li>
    <li>      radeonsi/gfx10: remove incorrect ngg/pos_writes_edgeflag variables</li>
    <li>      radeonsi/gfx10: set PA_CL_VS_OUT_CNTL with CONTEXT_REG_RMW to fix edge flags</li>
    <li>      radeonsi: consolidate determining VGPR_COMP_CNT for API VS</li>
    <li>      radeonsi: align scratch and ring buffer allocations for faster memory access</li>
    <li>      radeonsi: unbind blend/DSA/rasterizer state correctly in delete functions</li>
    <li>      radeonsi: fix scratch buffer WAVESIZE setting leading to corruption</li>
    <li>      ac: enable LLVM atomic optimizations</li>
    <li>      ac: use fma on gfx10</li>
    <li>      radeonsi/gfx10: use fma for TGSI_OPCODE_FMA</li>
    <li>      radeonsi/gfx10: don&#x27;t call gfx10_destroy_query with compute-only contexts</li>
    <li>      radeonsi: disable DCC when importing a texture from an incompatible driver</li>
    <li>      radeonsi: only support at most 1024 threads per block</li>
    <li>      radeonsi/gfx10: fix wave occupancy computations</li>
    <li>      r300,r600,radeonsi: read winsys_handle::stride,offset in drivers, not winsyses</li>
    <li>      r300,r600,radeonsi: set winsys_handle::stride,offset in drivers, not winsyses</li>
    <li>      ac/surface: add RADEON_SURF_NO_FMASK</li>
    <li>      radeonsi: handle NO_DCC early</li>
    <li>      radeonsi: move HTILE allocation outside of radeonsi</li>
    <li>      radeonsi: move texture storage allocation outside of radeonsi</li>
    <li>      radeonsi: remove redundant si_texture offset and size fields</li>
    <li>      ac: replace HAVE_LLVM with LLVM_VERSION_MAJOR for atomic-optimizations</li>
    <li>      prog_to_nir, tgsi_to_nir: make sure kill doesn&#x27;t discard NaNs</li>
    <li>      radeonsi/gfx9: honor user stride for imported buffers</li>
    <li>      radeonsi: add Navi12 PCI ID</li>
    <li>      ac: move PBB MAX_ALLOC_COUNT into radeon_info</li>
    <li>      ac: move num_sdp_interfaces into radeon_info</li>
    <li>      ac: move ac_get_max_wave64_per_simd into radeon_info</li>
    <li>      ac: move ac_get_num_physical_sgprs into radeon_info</li>
    <li>      ac: move ac_get_num_physical_vgprs into radeon_info</li>
    <li>      gallium: extend resource_get_param to be as capable as resource_get_handle</li>
    <li>      radeonsi: implement pipe_screen::resource_get_param</li>
    <li>      radeonsi: include drm_fourcc.h to fix the build</li>
    <li>      amd: add more PCI IDs for Navi14</li>
    <li>      ac/addrlib: fix chip identification for Vega10, Arcturus, Raven2, Renoir</li>
    <li>      ac: stop using PCI IDs for chip identification</li>
    <li>      amd: remove all PCI IDs supported by amdgpu</li>
    <li>      nir: don&#x27;t add bindless variables to num_textures and num_images</li>
    <li>      nir: define 8-byte size and alignment for bindless variables</li>
    <li>      tgsi_to_nir: fix masked out image loads</li>
    <li>      tgsi_to_nir: fix 2-component system values like tess_level_inner_default</li>
    <li>      ac/nir: port Z compare value clamping from radeonsi</li>
    <li>      ac/nir: force unnormalized coordinates for RECT</li>
    <li>      radeonsi: initialize displayable DCC using the retile blit to prevent hangs</li>
    <li>      gallium/vl: don&#x27;t set PIPE_HANDLE_USAGE_EXPLICIT_FLUSH</li>
    <li>      radeonsi/gfx10: fix L2 cache rinse programming</li>
    <li>      ac: fix incorrect vram_size reported by the kernel</li>
    <li>      ac: add radeon_info::tcc_harvested</li>
    <li>      radeonsi/gfx10: fix corruption for chips with harvested TCCs</li>
    <li>      ac: fix num_good_cu_per_sh for harvested chips</li>
    <li>      ac: set the number of SDPs same as the number of TCCs</li>
    <li>      ac: reorder and print all radeon_info fields</li>
    <li>      tgsi_to_nir: handle PIPE_FORMAT_NONE in image opcodes</li>
    <li>      ac/surface: don&#x27;t allocate FMASK if there is no graphics</li>
    <li>      ac: add ac_build_image_get_sample_count from radeonsi</li>
    <li>      ac/nir: fix GLSL imageSamples()</li>
    <li>      winsys/radeon: initialize SIMD properties in radeon_info</li>
    <li>      util: use simple_mtx_t for util_range</li>
    <li>      gallium: add PIPE_RESOURCE_FLAG_SINGLE_THREAD_USE to skip util_range lock</li>
    <li>      st/mesa: use simple_mtx_t instead of mtx_t</li>
    <li>      radeonsi: use simple_mtx_t instead of mtx_t</li>
    <li>      amd: don&#x27;t use AMD_FAMILY definitions from amdgpu_drm.h</li>
    <li>      gallium/util: remove enum numbering from util_format_layout</li>
    <li>      gallium/util: add planar format layouts and helpers</li>
    <li>      gallium/u_tests: test NV12 allocation and export</li>
    <li>      vl: use u_format in vl_video_buffer_formats</li>
    <li>      radeonsi: allocate planar multimedia formats in 1 buffer</li>
    <li>      radeonsi: remove si_vid_join_surfaces and use combined planar allocations</li>
    <li>      radeonsi: ignore metadata for non-zero planes</li>
    <li>      radeonsi: don&#x27;t set BO metadata for non-zero planes</li>
    <li>      nir: add shader_info::last_msaa_image</li>
    <li>      tgsi/scan: add tgsi_shader_info::msaa_images_declared</li>
    <li>      radeonsi: fix GLSL imageSamples()</li>
    <li>      radeonsi: set the sample index for shader images correctly</li>
    <li>      radeonsi: add FMASK slots for shader images (for MSAA images)</li>
    <li>      radeonsi: clean up image_fetch_rsrc</li>
    <li>      radeonsi: apply FMASK to MSAA image loads</li>
    <li>      radeonsi: expand FMASK before MSAA image stores are used</li>
    <li>      radeonsi: enable MSAA shader images</li>
    <li>      nir: add a strip parameter to nir_serialize</li>
    <li>      nir: move gl_nir_opt_access from glsl directory</li>
    <li>      nir/drawpixels: handle load_color0, load_input, load_interpolated_input</li>
    <li>      nir/drawpixels: fix what appears to be a copy-paste bug in get_texcoord_const</li>
    <li>      tgsi_to_nir: add #ifdef header guards</li>
    <li>      nir: add nir_shader_compiler_options::lower_to_scalar</li>
    <li>      st/mesa: use nir_shader_compiler_options::lower_to_scalar</li>
    <li>      tgsi_to_nir: use nir_shader_compiler_options::lower_to_scalar</li>
    <li>      gallium: remove PIPE_SHADER_CAP_SCALAR_ISA</li>
    <li>      ac/nir: add back nir_op_fmod</li>
    <li>      clover: fix the nir_serialize build failure</li>
    <li>      st/mesa: always allocate pack/unpack buffers as staging</li>
    <li>      radeonsi/nir: simplify si_lower_nir signature</li>
    <li>      st/mesa: use *prog at the end of st_link_nir</li>
    <li>      st/mesa: deduplicate code for ATI fs in st_program_string_notify</li>
    <li>      st/mesa: simplify the signature of st_release_basic_variants</li>
    <li>      st/mesa: don&#x27;t store stream output info to shader cache for tess ctrl shaders</li>
    <li>      st/mesa: remove st_compute_program in favor of st_common_program</li>
    <li>      st/mesa: deduplicate cases in st_deserialise_ir_program</li>
    <li>      st/mesa: sink TCS/TES/GS/CS translate code into st_translate_common_program</li>
    <li>      st/mesa: deduplicate st_common_program code in st_program_string_notify</li>
    <li>      st/mesa: clean up more after the removal of st_compute_program</li>
    <li>      st/mesa: move vertex program preparation code into st_prepare_vertex_program</li>
    <li>      st/mesa: unify transform feedback info translation code</li>
    <li>      st/mesa: finalize NIR after shader variant passes for TCS/TES/GS/CS</li>
    <li>      st/mesa: don&#x27;t call translate_*_program functions for NIR</li>
    <li>      st/mesa: call prog_to_nir sooner for ARB_fp</li>
    <li>      st/mesa: reorder and document code in st_translate_vertex_program</li>
    <li>      st/mesa: call the reset callback if glGetGraphicsResetStatus returns a failure</li>
    <li>      radeonsi: call the reset callback if get_device_reset_status returns a failure</li>
    <li>      radeonsi: recreate aux_context after a GPU reset</li>
    <li>      gallium/u_blitter: remove an unused variable</li>
    <li>      st/mesa: silence a warning in st_nir_lower_tex_src_plane</li>
    <li>      st/mesa: call st_nir_opts for linked shaders only once</li>
    <li>      st/mesa: lower doubles for NIR after linking</li>
    <li>      st/mesa: rename st_xxx_program::tgsi to state</li>
    <li>      st/mesa: rename basic -&gt; common for st_common_program</li>
    <li>      st/mesa: remove num_tgsi_tokens from st_xx_program</li>
    <li>      st/mesa: remove st_vp_variant_key in favor of st_common_variant_key</li>
    <li>      st/mesa: remove unused st_xxx_program::sha1</li>
    <li>      st/mesa: remove redundant function st_reference_compprog</li>
    <li>      st/mesa: merge st_fragment_program into st_common_program</li>
    <li>      st/mesa: don&#x27;t call variables &quot;tgsi&quot; when they can reference NIR</li>
    <li>      nir: allow nir_lower_uniforms_to_ubo to be run repeatedly</li>
    <li>      st/mesa: replace pipe_shader_state with tgsi_token* in st_vp_variant</li>
    <li>      gallium/noop: implement get_disk_shader_cache and get_compiler_options</li>
    <li>      util/disk_cache: finish all queue jobs in destroy instead of killing them</li>
    <li>      util/u_queue: skip util_queue_finish if num_threads is 0</li>
    <li>      st/mesa: move some NIR lowering before shader caching</li>
    <li>      st/mesa: don&#x27;t lower_global_vars_to_local for VS if there are no dead inputs</li>
    <li>      st/mesa: assign driver locations for VS inputs for NIR before caching</li>
    <li>      st/mesa: update VS shader_info for NIR after lowering passes</li>
    <li>      gallium: add pipe_screen::finalize_nir</li>
    <li>      tgsi_to_nir: use pipe_screen::finalize_nir</li>
    <li>      st/mesa: use pipe_screen::finalize_nir</li>
    <li>      radeonsi/nir: implement pipe_screen::finalize_nir</li>
    <li>      glsl/serialize: restructure remap table code</li>
    <li>      glsl/serialize: optimize for equal offsets in uniform remap tables</li>
    <li>      include: add the definition of EGL_EXT_image_flush_external</li>
    <li>      dri_interface: add interface for EGL_EXT_image_flush_external</li>
    <li>      st/dri: assume external consumers of back buffers can write to the buffers</li>
    <li>      st/dri: add support for EGL_EXT_image_flush_external</li>
    <li>      egl: handle EGL_IMAGE_EXTERNAL_FLUSH_EXT</li>
    <li>      egl: implement new functions from EGL_EXT_image_flush_external</li>
    <li>      docs: document new feature EGL_EXT_image_flush_external</li>
    <li>      radeonsi: don&#x27;t print diagnostic LLVM remarks and notes</li>
    <li>      radeonsi: initialize shader compilers in threads on demand</li>
    <li>      ac: get tcc_harvested from the kernel</li>
    <li>      winsys/amdgpu: use the new GPU reset query</li>
    <li>      st/mesa: fix Sanctuary and Tropics by disabling ARB_gpu_shader5 for them</li>
    <p></p>
    <p>Marek Vasut (4):</p>
    <li>      etnaviv: Make contexts track resources</li>
    <li>      etnaviv: Rework resource status tracking</li>
    <li>      etnaviv: Command buffer realloc</li>
    <li>      etnaviv: Rework locking</li>
    <p></p>
    <p>Marijn Suijten (2):</p>
    <li>      freedreno/a5xx: enable a510</li>
    <li>      freedreno/ir3: Add missing ir3_nir_lower_tex_prefetch.c to Android.mk</li>
    <p></p>
    <p>Matt Turner (6):</p>
    <li>      clover: Remove unused code</li>
    <li>      intel/compiler: Remove unreachable() from brw_reg_type.c</li>
    <li>      intel/compiler: Restructure instruction compaction in preparation for Gen12</li>
    <li>      intel/compiler: Inline get_src_index()</li>
    <li>      intel/compiler: Make separate src0/src1 index tables</li>
    <li>      intel/compiler: Add instruction compaction support on Gen12</li>
    <p></p>
    <p>Mauro Rossi (8):</p>
    <li>      android: mesa: revert &quot;Enable asm unconditionally&quot;</li>
    <li>      android: anv: libmesa_vulkan_common: add libmesa_util static dependency</li>
    <li>      android: aco: fix undefined template &#x27;std::__1::array&#x27; build errors</li>
    <li>      android: compiler/nir: build nir_divergence_analysis.c</li>
    <li>      android: aco: add support for libmesa_aco</li>
    <li>      android: amd/common: export amd/llvm headers</li>
    <li>      android: aco: fix Lower to CSSA</li>
    <li>      android: radeonsi: fix build after vl refactoring (v2)</li>
    <p></p>
    <p>Maya Rashish (3):</p>
    <li>      intel/compiler: avoid truncating int64_t to int</li>
    <li>      meson: Test for -Wl,--build-id=sha1</li>
    <li>      llvmpipe: avoid left-shifting a negative number.</li>
    <p></p>
    <p>Michael Schellenberger Costa (1):</p>
    <li>      aco: Cleanup insert_before_logical_end</li>
    <p></p>
    <p>Michel Dänzer (48):</p>
    <li>      gitlab-ci: Move up meson-main job definition</li>
    <li>      gitlab-ci: Use new needs: keyword</li>
    <li>      gitlab-ci: Explicitly install linux-libc-dev for foreign architectures</li>
    <li>      gitlab-ci: Keep g++ from stretch when installing foreign toolchains</li>
    <li>      gitlab-ci: Add needs stanza to arm64_a306_gles2 job definition</li>
    <li>      gitlab-ci: Use multiple inheritance instead of YAML references</li>
    <li>      gitlab-ci: Simplify some job definitions by extending more similar jobs</li>
    <li>      gitlab-ci: Move dependencies/needs for meson-main job to .deqp-test</li>
    <li>      gitlab-ci: Move up meson-arm64 job definition</li>
    <li>      gallivm: Limit DEBUG workaround to LLVM &lt; 7</li>
    <li>      swr: Limit DEBUG workaround to LLVM &lt; 7</li>
    <li>      ac: Remove DEBUG workaround</li>
    <li>      gitlab-ci: Reference full ci-templates commit hash</li>
    <li>      gitlab-ci: Pass --no-remove to apt-get where possible</li>
    <li>      gitlab-ci: Create separate docker images for Debian stretch &amp; buster</li>
    <li>      gitlab-ci: Use newer packages from backports by default</li>
    <li>      gitlab-ci: Use crossbuild-essential-* packages</li>
    <li>      gitlab-ci: Move scons build/test commands to a separate shell script</li>
    <li>      gitlab-ci: Test scons with all LLVM versions</li>
    <li>      gitlab-ci: Merge scons-nollvm and scons-llvm jobs</li>
    <li>      radeonsi: fix VAAPI segfault due to various bugs</li>
    <li>      loader: Avoid use-after-free / use of uninitialized local variables</li>
    <li>      gitlab-ci: Declare needs: for stretch docker image</li>
    <li>      gitlab-ci: Add needs: for x86 buster docker image</li>
    <li>      gitlab-ci: Add test-container:arm64 to needs: for arm64 test jobs</li>
    <li>      gitlab-ci: Set ccache path for cross compilers in meson cross file</li>
    <li>      gitlab-ci: Use per-job ccache</li>
    <li>      dri3: Pass __DRI2_THROTTLE_COPYSUBBUFFER from loader_dri3_copy_drawable</li>
    <li>      loader: Simplify handling of the radeonsi driver</li>
    <li>      gitlab-ci/lava: Add needs: for container image to test jobs</li>
    <li>      gitlab-ci: Remove redundant .meson-cross template script</li>
    <li>      gitlab-ci: Add .use-debian-10 template</li>
    <li>      gitlab-ci: Disable meson-mingw32-x86_64 job again for now</li>
    <li>      gitlab-ci: Sort ARM docker image packages in alphabetical order</li>
    <li>      gitlab-ci: Bring ARM docker image install script in line with x86_64</li>
    <li>      gitlab-ci: Explicitly list debian-10 in needs: for .deqp-test template</li>
    <li>      gitlab-ci: Use native aarch64 runner for ARM build jobs</li>
    <li>      gitlab-ci: Update the meson cross file for LLVM_VERSION as well</li>
    <li>      gitlab-ci: Enable llvmpipe in ARM build jobs</li>
    <li>      intel/compiler: Don&#x27;t left-shift by &gt;= the number of bits of the type</li>
    <li>      intel/compiler: Cast to target type before shifting left</li>
    <li>      intel/fs: Check for NULL key in fs_visitor constructor</li>
    <li>      gallium/util: Cast to target type before shifting left</li>
    <li>      util: Use uint64_t for shifting left in sign_extend and strunc</li>
    <li>      util/tests: Avoid int64_t overflow issues in fast_idiv_by_const test</li>
    <li>      gitlab-ci: Enable UBSan for the meson-vulkan job</li>
    <li>      gitlab-ci: Only run the pipeline if any files affecting it have changed</li>
    <li>      gitlab-ci: Disable meson-windows job for the time being</li>
    <p></p>
    <p>Michel Zou (1):</p>
    <li>      scons: add py3 support</li>
    <p></p>
    <p>Nanley Chery (47):</p>
    <li>      anv/blorp: Use BLORP_BATCH_NO_UPDATE_CLEAR_COLOR</li>
    <li>      anv: Properly allocate aux-tracking space for CCS_E</li>
    <li>      anv/formats: Disable I915_FORMAT_MOD_Y_TILED_CCS on TGL+</li>
    <li>      iris: Drop support for I915_FORMAT_MOD_Y_TILED_CCS on TGL+</li>
    <li>      isl: Disable CCS_D on Gen12+</li>
    <li>      anv/image: Disable CCS_D on Gen12+</li>
    <li>      anv/cmd_buffer: Don&#x27;t assume CCS_E includes CCS_D</li>
    <li>      iris: Don&#x27;t assume CCS_E includes CCS_D</li>
    <li>      isl: Round up some pitches to 512B for Gen12&#x27;s CCS</li>
    <li>      intel/blorp: Halve the Gen12 fast-clear/resolve rectangle</li>
    <li>      intel/blorp: Don&#x27;t assert aux slices match main slices</li>
    <li>      anv/private: Modify aux slice helpers for Gen12 CCS</li>
    <li>      i965/miptree: Avoid -Wswitch for the Gen12 aux modes</li>
    <li>      isl/drm: Map HiZ and CCS tilings to Y</li>
    <li>      iris: Allow for non-Y-tiled aux allocation</li>
    <li>      isl: Add and use isl_tiling_flag_to_enum()</li>
    <li>      isl: Redefine the CCS layout for Gen12</li>
    <li>      intel: Enable CCS_E for some formats on Gen12</li>
    <li>      intel/blorp: Disable depth testing for slow depth clears</li>
    <li>      iris: Clear ::has_hiz when disabling aux</li>
    <li>      intel: Use RENDER_SURFACE_STATE::DepthStencilResource</li>
    <li>      intel: Use 3DSTATE_DEPTH_BUFFER::ControlSurfaceEnable</li>
    <li>      intel: Enable CCS_E for R24_UNORM_X8_TYPELESS on TGL+</li>
    <li>      isl: Reduce assertions during aux surf creation</li>
    <li>      intel: Support HIZ_CCS in isl_surf_get_ccs_surf</li>
    <li>      intel/blorp: Assert against HiZ in surface states</li>
    <li>      intel/blorp: Treat HIZ_CCS like HiZ</li>
    <li>      iris: Don&#x27;t guess the aux_usage</li>
    <li>      iris: Create an unusable secondary aux surface</li>
    <li>      iris: Define initial HIZ_CCS state and transitions</li>
    <li>      iris: Enable HIZ_CCS in depth buffer instructions</li>
    <li>      isl: Add isl_surf_supports_hiz_ccs_wt()</li>
    <li>      intel: Refactor blorp_can_hiz_clear_depth()</li>
    <li>      intel/blorp: Satisfy HIZ_CCS fast-clear alignments</li>
    <li>      iris: Start using blorp_can_hiz_clear_depth()</li>
    <li>      intel: Fix and use HIZ_CCS write through mode</li>
    <li>      intel/blorp: Satisfy clear color rules for HIZ_CCS</li>
    <li>      iris: Enable HIZ_CCS sampling</li>
    <li>      iris: Don&#x27;t leak the resource for unsupported modifier</li>
    <li>      iris: Disallow incomplete resource creation</li>
    <li>      iris: Drop iris_resource::aux::extra_aux::bo</li>
    <li>      iris: Bail resource creation upon aux creation error</li>
    <li>      iris: Determine aux offsets within configure_aux</li>
    <li>      iris: Allocate main and aux surfaces together</li>
    <li>      gallium/dri2: Fix creation of multi-planar modifier images</li>
    <li>      gallium: Store the image format in winsys_handle</li>
    <li>      iris: Fix import of multi-planar surfaces with modifiers</li>
    <p></p>
    <p>Nataraj Deshpande (1):</p>
    <li>      egl/android: Enable HAL_PIXEL_FORMAT_RGBA_FP16 format</li>
    <p></p>
    <p>Neil Armstrong (1):</p>
    <li>      Revert &quot;ci: Disable lima until its farm can get fixed.&quot;</li>
    <p></p>
    <p>Neil Roberts (6):</p>
    <li>      glsl: Store the precision for a function return type</li>
    <li>      nir/builder: Move nir_atan and nir_atan2 from SPIR-V translator</li>
    <li>      nir/builtin: Add #include u_math.h to the header</li>
    <li>      nir/builtin: Add extern &quot;C&quot; guards to nir_builtin_builder.h</li>
    <li>      glsl: Add opcodes for atan and atan2</li>
    <li>      glsl/builtin: Add alternate versions of atan using new ops</li>
    <p></p>
    <p>OBATA Akio (1):</p>
    <li>      util: fix to detect NetBSD properly</li>
    <p></p>
    <p>Paulo Zanoni (8):</p>
    <li>      intel/fs: grab fail_msg from v32 instead of v16 when v32-&gt;run_cs fails</li>
    <li>      intel/fs: make scan/reduce work with SIMD32 when it fits 2 registers</li>
    <li>      intel/fs: roll the loop with the &lt;0,1,0&gt; additions in emit_scan()</li>
    <li>      intel/fs: the maximum supported stride width is 16</li>
    <li>      intel/fs: fix SHADER_OPCODE_CLUSTER_BROADCAST for SIMD32</li>
    <li>      intel/fs: don&#x27;t forget the stride at generate_shuffle</li>
    <li>      intel/compiler: remove the operand restriction for src1 on GLK</li>
    <li>      intel/compiler: fix nir_op_{i,u}*32 on ICL</li>
    <p></p>
    <p>Pierre Moreau (5):</p>
    <li>      meson: Check for SPIRV-Tools and llvm-spirv</li>
    <li>      clover/spirv: Add functions for validating SPIR-V binaries</li>
    <li>      clover/spirv: Add functions for parsing arguments, linking programs, etc.</li>
    <li>      clover/llvm: Add options for dumping SPIR-V binaries</li>
    <li>      clover/llvm: Add functions for compiling from source to SPIR-V</li>
    <p></p>
    <p>Pierre-Eric Pelloux Prayer (1):</p>
    <li>      mesa: implement glTextureStorageNDEXT functions</li>
    <p></p>
    <p>Pierre-Eric Pelloux-Prayer (23):</p>
    <li>      glsl: replace &#x27;x + (-x)&#x27; with constant 0</li>
    <li>      mesa: fix invalid target error handling for teximage</li>
    <li>      mesa: add EXT_dsa glNamedRenderbufferStorageEXT and glGetNamedRenderbufferParameterivEXT</li>
    <li>      mesa: add EXT_dsa glClientAttribDefaultEXT / glPushClientAttribDefaultEXT</li>
    <li>      mesa: add EXT_dsa NamedProgram functions</li>
    <li>      mesa: add EXT_dsa glProgramUniform*EXT functions</li>
    <li>      mesa: add EXT_dsa + EXT_texture_buffer_object functions</li>
    <li>      mesa: add EXT_dsa + EXT_texture_integer functions</li>
    <li>      mesa: add EXT_dsa + EXT_gpu_shader4 functions</li>
    <li>      mesa: add EXT_dsa + EXT_gpu_program_parameters functions</li>
    <li>      mesa: add EXT_dsa glGetFloati_vEXT/glGetDoublei_vEXT</li>
    <li>      mesa: refactor GenerateTextureMipmap handling</li>
    <li>      mesa: add EXT_dsa Generate*MipmapEXT functions</li>
    <li>      mesa: add EXT_dsa NamedRenderbufferStorageMultisampleEXT function</li>
    <li>      mesa: add EXT_dsa NamedCopyBufferSubDataEXT function</li>
    <li>      radeonsi: align sdma byte count to dw</li>
    <li>      radeonsi: sdma misc fixes</li>
    <li>      radeonsi: disable sdma for gfx10</li>
    <li>      radeonsi: tell the shader disk cache what IR is used</li>
    <li>      mesa: enable msaa in clear_with_quad if needed</li>
    <li>      radeonsi: fix shader disk cache key</li>
    <li>      radeonsi: fix multi plane buffers creation</li>
    <li>      radeonsi: use gfx9.surf_offset to compute texture offset</li>
    <p></p>
    <p>Plamena Manolova (8):</p>
    <li>      genxml: Add 3DSTATE_DEPTH_BOUNDS instruction.</li>
    <li>      iris: Add support for depth bounds testing.</li>
    <li>      anv: Add support for depth bounds testing.</li>
    <li>      genxml: Change 3DSTATE_DEPTH_BOUNDS bias.</li>
    <li>      anv: Set depthBounds to true in anv_GetPhysicalDeviceFeatures.</li>
    <li>      genxml: Add 3DSTATE_SO_BUFFER_INDEX_* instructions</li>
    <li>      iris: Implement new way for setting streamout buffers.</li>
    <li>      anv: Implement new way for setting streamout buffers.</li>
    <p></p>
    <p>Prodea Alexandru-Liviu (4):</p>
    <li>      scons/windows: Fix build with LLVM&gt;=8</li>
    <li>      scons/MSYS2-MinGW-W64: Fix build options defaults Signed-off-by: Prodea Alexandru-Liviu &lt;liviuprodea@yahoo.com&gt; Reviewed-by: Jose Fonseca &lt;jfonseca@vmware.com&gt; Cc: &lt;mesa-stable@lists.freedesktop.org&gt;</li>
    <li>      Appveyor/Meson: Add build test of osmesa gallium Signed-off-by: Prodea Alexandru-Liviu &lt;liviuprodea@yahoo.com&gt; Acked-by: Eric Engestrom &lt;eric@engestrom.ch&gt; Reviewed-by: Dylan Baker &lt;dylan@pnwbakers.com&gt;</li>
    <li>      Meson: Remove lib prefix from graw and osmesa when building with Mingw. Also remove version sufix from osmesa swrast on Windows.</li>
    <p></p>
    <p>Qiang Yu (4):</p>
    <li>      lima: move format handling to unified place</li>
    <li>      lima: implement EGL_KHR_partial_update</li>
    <li>      lima: don&#x27;t use damage system when full damage</li>
    <li>      lima: move damage bound build to resource</li>
    <p></p>
    <p>Rafael Antognolli (13):</p>
    <li>      anv: Only re-emit non-dynamic state that has changed.</li>
    <li>      intel/tools: Fix aubinator usage of rb_tree.</li>
    <li>      anv/block_pool: Align anv_block_pool state to 64 bits.</li>
    <li>      intel/tools: Factor out GGTT allocation.</li>
    <li>      intel/tools: Use common code for GGTT address allocation.</li>
    <li>      intel/tools: Add basic aub_context code and helpers.</li>
    <li>      intel/tools: Support multiple contexts in intel_dump_gpu.</li>
    <li>      intel/blorp/gen12: Set FWCC when storing the clear color.</li>
    <li>      anv: Align fast clear color state buffer to a page.</li>
    <li>      iris: Align fast clear color state buffer to a page.</li>
    <li>      iris: Add Tile Cache Flush for Unified Cache.</li>
    <li>      blorp: Add Tile Cache Flush for Unified Cache.</li>
    <li>      anv: Add Tile Cache Flush for Unified Cache.</li>
    <p></p>
    <p>Rhys Perry (84):</p>
    <li>      nir/lower_io_to_vector: allow FS outputs to be vectorized</li>
    <li>      nir/lower_io_to_vector: add flat mode</li>
    <li>      util: include u_endian.h in u_math.h</li>
    <li>      nir/lower_io_to_vector: don&#x27;t merge compact varyings</li>
    <li>      radv: keep GS threads with excessive emissions which could write to memory</li>
    <li>      radv: always emit a position export in gs copy shaders</li>
    <li>      radv: never kill a NGG GS shader</li>
    <li>      nir/opt_remove_phis: handle phis with no sources</li>
    <li>      aco: run nir_lower_int64() before nir_lower_idiv()</li>
    <li>      aco: implement 64-bit ineg</li>
    <li>      aco: fix GFX9 opcode for v_xad_u32</li>
    <li>      aco: fix v_subrev_co_u32_e64 opcode</li>
    <li>      aco: fix opcode for s_mul_hi_i32</li>
    <li>      aco: check for duplicate opcode numbers</li>
    <li>      radv/aco: actually disable ACO when unsupported</li>
    <li>      aco,radv/aco: get dissassembly for release builds if requested</li>
    <li>      aco: store printed backend IR in binary</li>
    <li>      radv/aco: return a correct name and description for the backend IR</li>
    <li>      aco,radv: rename record_llvm_ir/llvm_ir_string to record_ir/ir_string</li>
    <li>      aco: don&#x27;t CSE v_readlane_b32/v_readfirstlane_b32</li>
    <li>      aco: CSE readlane/readfirstlane/permute/reduce with the same exec mask</li>
    <li>      aco: set loop_info::has_discard for demotes</li>
    <li>      aco: don&#x27;t remove the loop exec mask in transition_to_Exact()</li>
    <li>      radv/aco,aco: set lower_fmod</li>
    <li>      nir/print: always use the right FILE *</li>
    <li>      aco: fix load_constant with multiple arrays</li>
    <li>      nir/constant_folding: add back and use constant_fold_state</li>
    <li>      nir/constant_folding: fold load_constant intrinsics</li>
    <li>      aco: move s_andn2_b64 instructions out of the p_discard_if</li>
    <li>      aco: enable nir_opt_sink</li>
    <li>      aco: Allow literals on VOP3 instructions.</li>
    <li>      aco: Assemble opsel in VOP3 instructions.</li>
    <li>      aco: workaround GFX10 0x3f branch bug</li>
    <li>      aco: pad code with s_code_end on GFX10</li>
    <li>      aco: Initial work to avoid GFX10 hazards.</li>
    <li>      aco: Use the VOP3-only add/sub GFX10 instructions if needed.</li>
    <li>      aco: Have s_waitcnt_vscnt write to NULL.</li>
    <li>      radv/aco: disable NGG when ACO is used</li>
    <li>      aco/gfx10: fix inline uniform blocks</li>
    <li>      aco/gfx10: disable GFX9 1D texture workarounds</li>
    <li>      aco: rework scratch resource code</li>
    <li>      aco: update print_ir</li>
    <li>      nir/lower_non_uniform: lower image/texture instructions taking derefs</li>
    <li>      nir/lower_input_attachments: pass on non-uniform access flag</li>
    <li>      aco: don&#x27;t apply sgprs/constants to read/write lane instructions</li>
    <li>      aco: use can_accept_constant in valu_can_accept_literal</li>
    <li>      aco: readfirstlane vgpr pointers in convert_pointer_to_64_bit()</li>
    <li>      aco: implement divergent vulkan_resource_index</li>
    <li>      aco: don&#x27;t use p_as_uniform for vgpr sampler/image indices</li>
    <li>      aco: fix scheduling with s_memtime/s_memrealtime</li>
    <li>      aco: don&#x27;t CSE s_memtime</li>
    <li>      aco: emit_split_vector() s_memtime results</li>
    <li>      nir/lower_idiv: add new llvm-based path</li>
    <li>      aco: use nir_lower_idiv_precise</li>
    <li>      aco: run opt_algebraic in a loop</li>
    <li>      aco: small stage corrections</li>
    <li>      aco: fix 64-bit p_extract_vector on 32-bit p_create_vector</li>
    <li>      aco: create load_lds/store_lds helpers</li>
    <li>      aco: fix sparse store_lds()</li>
    <li>      aco: properly combine additions into ds_write2_b64/ds_read2_b64</li>
    <li>      aco: use ds_read2_b64/ds_write2_b64</li>
    <li>      aco: add a few missing checks in value numbering</li>
    <li>      aco: keep can_reorder/barrier when combining addition into SMEM</li>
    <li>      aco: add missing bld.scc()</li>
    <li>      Revert &quot;aco: only emit waitcnt on loop continues if we there was some load or export&quot;</li>
    <li>      radv: round vgprs/sgprs before calculating max_waves</li>
    <li>      aco: increase accuracy of SGPR limits</li>
    <li>      aco: take LDS into account when calculating num_waves</li>
    <li>      aco: Fix reductions on GFX10.</li>
    <li>      aco: Remove dead code in reduction lowering.</li>
    <li>      aco: try to group together VMEM loads of the same resource</li>
    <li>      aco: a couple loop handling fixes for GFX10 hazard pass</li>
    <li>      aco: rename README to README.md</li>
    <li>      aco: fix new_demand calculation for first instructions</li>
    <li>      aco: fix shuffle with uniform operands</li>
    <li>      aco: fix read_invocation with VGPR lane index</li>
    <li>      aco: don&#x27;t propagate vgprs into v_readlane/v_writelane</li>
    <li>      aco: don&#x27;t combine literals into v_cndmask_b32/v_subb/v_addc</li>
    <li>      aco: fix 64-bit fsign with 0</li>
    <li>      aco: propagate p_wqm on an image_sample&#x27;s coordinate p_create_vector</li>
    <li>      aco: fix i2i64</li>
    <li>      aco: add v_nop inbetween exec write and VMEM/DS/FLAT</li>
    <li>      radv: set writes_memory for global memory stores/atomics</li>
    <li>      nir/lower_io_to_vector: don&#x27;t create arrays when not needed</li>
    <p></p>
    <p>Rob Clark (60):</p>
    <li>      freedreno/ir3: convert block-&gt;predecessors to set</li>
    <li>      freedreno/ir3: maintain predecessors/successors</li>
    <li>      freedreno/ir3: do better job of marking convergence points</li>
    <li>      nir: remove unused constant_fold_state</li>
    <li>      freedreno/drm: fix 64b iova shifts</li>
    <li>      freedreno/ir3: use uniform base</li>
    <li>      freedreno/ir3: cleanup &quot;partially const&quot; ubo srcs</li>
    <li>      freedreno/ir3: fix addr/pred spilling</li>
    <li>      freedreno/ir3: fix mad copy propagation special case</li>
    <li>      freedreno/ir3: assert that only single address</li>
    <li>      freedreno/ir3: fix cp cmps.s opt</li>
    <li>      freedreno/ir3: allow copy propagation for relative</li>
    <li>      util: android logging support</li>
    <li>      freedreno/a6xx: don&#x27;t tile things that are too small</li>
    <li>      freedreno/a6xx: fix 3d tex layout</li>
    <li>      freedreno: fix compiler warning</li>
    <li>      freedreno/a6xx: pre-calculate userconst stateobj size</li>
    <li>      gitlab-ci/a630: skip dEQP-GLES3.functional.fbo.msaa.2_samples.stencil_index8</li>
    <li>      freedreno/a6xx: un-open-code PC_PRIMITIVE_CNTL_1.PSIZE</li>
    <li>      freedreno/a6xx: fix binning pass vs. xfb</li>
    <li>      freedreno/a6xx: do streamout only in binning pass</li>
    <li>      freedreno/ir3: drop unused param</li>
    <li>      freedreno/ir3: handle multi component alu src when propagating shifts</li>
    <li>      freedreno: update registers</li>
    <li>      freedreno/ir3: remove unused ir3_instruction::inout</li>
    <li>      freedreno/ir3: track sysval slot for inputs</li>
    <li>      freedreno/ir3: don&#x27;t DCE ij_pix if used for pre-fs-texture-fetch</li>
    <li>      freedreno/ir3: add meta instruction for pre-fs texture fetch</li>
    <li>      freedreno/ir3: fixup register footprint to account for prefetch</li>
    <li>      freedreno/ir3: add dummy bary.f(ei) for pre-fs-fetch</li>
    <li>      freedreno/ir3: add pre-dispatch tex fetch to disasm</li>
    <li>      freedreno/ir3: force i/j pixel to r0.x</li>
    <li>      freedreno/a6xx: add support for pre-fs texture fetch</li>
    <li>      turnip: add support for pre-fs texture fetch</li>
    <li>      freedreno/ir3: enable pre-fs texture fetch for a6xx</li>
    <li>      nir/search: fix the PoT helpers</li>
    <li>      freedreno/ir3: rename mul.s/mul.u</li>
    <li>      nir: Add a new ALU nir_op_imul24</li>
    <li>      nir: add amul instruction</li>
    <li>      nir: add address calc related opt rules</li>
    <li>      nir: add nir_lower_amul pass</li>
    <li>      freedreno/ir3: add rule to generate imad24</li>
    <li>      freedreno/ir3: optimize immed 2nd src to mad</li>
    <li>      freedreno/ir3: add imul24 opcode</li>
    <li>      freedreno/ir3: handle imad24_ir3 case in UBO lowering</li>
    <li>      freedreno/ir3: handle scalarized varying inputs</li>
    <li>      freedreno/ir3: fixup register footprint fixup</li>
    <li>      freedreno/ir3: debug cleanup</li>
    <li>      freedreno/ir3: make high regs easier to see in IR dumps</li>
    <li>      freedreno/ir3: propagate dest flags for collect/fanin</li>
    <li>      freedreno/ir3: treat high vs low reg as conversion</li>
    <li>      freedreno/ir3: allow copy-propagate out of fanout</li>
    <li>      freedreno/ir3: remove restrictions on const + (abs)/(neg)</li>
    <li>      freedreno/ir3: handle the progress case</li>
    <li>      freedreno/a6xx: remove some left over dead code</li>
    <li>      freedreno/a6xx: cleanup magic registers</li>
    <li>      freedreno/a6xx: add a618 support</li>
    <li>      freedreno/ir3: fix gpu hang with pre-fs-tex-fetch</li>
    <li>      Revert &quot;freedreno/ir3: enable pre-fs texture fetch for a6xx&quot;</li>
    <li>      nir/lower_clip: Fix incorrect driver loc for clipdist outputs</li>
    <p></p>
    <p>Robin Murphy (1):</p>
    <li>      egl/gbm: Fix config validation</li>
    <p></p>
    <p>Rohan Garg (3):</p>
    <li>      panfrost: Remove unused argument from panfrost_drm_submit_vs_fs_job()</li>
    <li>      panfrost: Jobs must be per context, not per screen</li>
    <li>      panfrost: protect access to shared bo cache and transient pool</li>
    <p></p>
    <p>Roland Scheidegger (4):</p>
    <li>      gallivm: use fallback code for mul_hi with llvm &gt;= 7.0</li>
    <li>      llvmpipe: fix CALLOC vs. free mismatches</li>
    <li>      llvmpipe: increase max texture size to 2GB</li>
    <li>      gallivm: Fix saturated signed psub/padd intrinsics on llvm 8</li>
    <p></p>
    <p>Roman Stratiienko (1):</p>
    <li>      lima: Return fence unconditionally</li>
    <p></p>
    <p>Sagar Ghuge (26):</p>
    <li>      intel/eu/gen12: Implement immediate 64 bit constant encoding.</li>
    <li>      nir: Add alpha_to_coverage lowering pass</li>
    <li>      intel/compiler: Remove emit_alpha_to_coverage workaround from backend</li>
    <li>      intel: Add missing entry for brw_nir_lower_alpha_to_coverage in Makefile</li>
    <li>      intel/compiler: Add Immediate support for 3 source instruction</li>
    <li>      intel/compiler: Set bits according to source file</li>
    <li>      intel/compiler: Don&#x27;t move immediate in register</li>
    <li>      intel/compiler: Refactor disassembly of sources in 3src instruction</li>
    <li>      intel/isl: Don&#x27;t reconfigure aux surfaces for MCS</li>
    <li>      iris: Initialize CCS to fast clear while using with MCS</li>
    <li>      iris: Define MCS_CCS state transitions and usages</li>
    <li>      intel/blorp: Use isl_aux_usage_has_mcs instead of comparing</li>
    <li>      iris: Get correct resource aux usage for copy</li>
    <li>      intel/isl: Support lossless compression with multisamples</li>
    <li>      iris: Create resource with aux_usage MCS_CCS</li>
    <li>      genxml/gen12: Add Stencil Buffer Resolve Enable bit</li>
    <li>      intel/blorp: Assign correct view while clearing depth stencil</li>
    <li>      intel/blorp: Add helper function for stencil buffer resolve</li>
    <li>      intel: Track stencil aux usage on Gen12+</li>
    <li>      intel/blorp: Set stencil resolve enable bit</li>
    <li>      iris: Resolve stencil buffer lossless compression with WM_HZ_OP packet</li>
    <li>      iris: Prepare stencil resource before clear depth stencil</li>
    <li>      iris: Prepare depth resource if clear_depth enable</li>
    <li>      iris: Prepare resources before stencil blit operation</li>
    <li>      iris: Resolve stencil resource prior to copy or used by CPU</li>
    <li>      intel/isl: Allow stencil buffer to support compression on Gen12+</li>
    <p></p>
    <p>Samuel Iglesias Gonsálvez (26):</p>
    <li>      spirv: check support for SPV_KHR_float_controls capabilities</li>
    <li>      spirv/nir: keep track of SPV_KHR_float_controls execution modes</li>
    <li>      nir: add auxiliary functions to detect if a mode is enabled</li>
    <li>      nir: add support for flushing to zero denorm constants</li>
    <li>      util: add softfloat functions to operate with doubles and floats</li>
    <li>      util: add float to float16 conversions with RTZ and RTNE</li>
    <li>      util: add fp64 -&gt; fp32 conversion support for RTNE and RTZ rounding modes</li>
    <li>      nir: add support for round to zero rounding mode to nir_op_f2f32</li>
    <li>      nir: mind rounding mode on fadd, fsub, fmul and fma opcodes</li>
    <li>      nir/opcodes: make sure f2f16_rtz and f2f16_rtne behavior is not overriden by the float controls execution mode</li>
    <li>      nir/constant_expressions: mind rounding mode converting from float to float16 destinations</li>
    <li>      nir/algebraic: disable inexact optimizations depending on float controls execution mode</li>
    <li>      nir: fix denorms in unpack_half_1x16()</li>
    <li>      nir: fix denorm flush-to-zero in sqrt&#x27;s lowering at nir_lower_double_ops</li>
    <li>      nir: fix fmin/fmax support for doubles</li>
    <li>      intel/nir: do not apply the fsin and fcos trig workarounds for consts</li>
    <li>      i965/fs/nir: add nir_op_unpack_half_2x16_split_*_flush_to_zero</li>
    <li>      i965/fs/generator: refactor rounding mode helper in preparation for float controls</li>
    <li>      i965/fs/generator: add new opcode to set float controls modes in control register</li>
    <li>      i965/fs: add emit_shader_float_controls_execution_mode() and aux functions</li>
    <li>      i965/fs: set rounding mode when emitting fadd, fmul and ffma instructions</li>
    <li>      i965/fs: set rounding mode when emitting nir_op_f2f32 or nir_op_f2f16</li>
    <li>      i965/fs: add support for shader float control to remove_extra_rounding_modes()</li>
    <li>      anv: enable VK_KHR_shader_float_controls and SPV_KHR_float_controls</li>
    <li>      docs/relnotes: add support for VK_KHR_shader_float_controls on Intel</li>
    <li>      nir/algebraic: refactor inexact opcode restrictions</li>
    <p></p>
    <p>Samuel Pitoiset (136):</p>
    <li>      radv/gfx10: tidy up gfx10_format_table.py</li>
    <li>      radv/gfx10: hardcode some depth+stencil formats in the format table</li>
    <li>      radv: allow to enable VK_AMD_shader_ballot only on GFX8+</li>
    <li>      radv: add a new debug option called RADV_DEBUG=noshaderballot</li>
    <li>      radv: force enable VK_AMD_shader_ballot for Wolfenstein Youngblood</li>
    <li>      radv: implement VK_AMD_shader_core_properties2</li>
    <li>      ac: fix exclusive scans on GFX8-GFX9</li>
    <li>      ac,radv,radeonsi: remove LLVM 7 support</li>
    <li>      gitlab-ci: bump LLVM to 8 for meson-vulkan and meson-clover</li>
    <li>      radv/gfx10: don&#x27;t initialize VGT_INSTANCE_STEP_RATE_0</li>
    <li>      radv/gfx10: do not use NGG with NAVI14</li>
    <li>      radv: fix getting the index type size for uint8_t</li>
    <li>      radv: add radv_process_depth_image_layer() helper</li>
    <li>      radv: add mipmaps support for decompress/resummarize</li>
    <li>      radv: decompress mipmapped depth/stencil images during transitions</li>
    <li>      radv: allocate metadata space for mipmapped depth/stencil images</li>
    <li>      radv: add mipmap support for the TC-compat zrange bug</li>
    <li>      radv: add mipmap support for the clear depth/stencil values</li>
    <li>      ac: drop llvm8 from some load/store helpers</li>
    <li>      ac: add has_clear_state to ac_gpu_info</li>
    <li>      ac: add has_distributed_tess to ac_gpu_info</li>
    <li>      ac: add has_dcc_constant_encode to ac_gpu_info</li>
    <li>      ac: add has_rbplus to ac_gpu_info</li>
    <li>      ac: add has_load_ctx_reg_pkt to ac_gpu_info</li>
    <li>      ac: add has_out_of_order_rast to ac_gpu_info</li>
    <li>      ac: add cpdma_prefetch_writes_memory to ac_gpu_info</li>
    <li>      ac: add has_gfx9_scissor_bug to ac_gpu_info</li>
    <li>      ac: add has_tc_compat_zrange_bug to ac_gpu_info</li>
    <li>      ac: add rbplus_allowed to ac_gpu_info</li>
    <li>      ac: add has_msaa_sample_loc_bug to ac_gpu_info</li>
    <li>      ac: add has_ls_vgpr_init_bug to ac_gpu_info</li>
    <li>      radv: make use of has_ls_vgpr_init_bug</li>
    <li>      radv/gfx10: compute the LDS size for exporting PrimID for VS</li>
    <li>      ac: import linear/perspective PS input parameters from radv/radeonsi</li>
    <li>      ac: drop now useless lookup_interp_param from ABI</li>
    <li>      radv: gather info about PS inputs in the shader info pass</li>
    <li>      radv: move lowering PS inputs/outputs at the right place</li>
    <li>      radv: remove some unused fields from radv_shader_context</li>
    <li>      radv: remove unused shader_info parameter in ac_compile_llvm_module()</li>
    <li>      radv: remove useless ac_llvm_util.h include from the WSI code</li>
    <li>      radv: remove radv_init_llvm_target() helper</li>
    <li>      radv: replace ac_nir_build_if by ac_build_ifcc</li>
    <li>      radv: move setting can_discard to ac_fill_shader_info()</li>
    <li>      radv: keep a pointer to a NIR shader into radv_shader_context</li>
    <li>      nir: do not assume that the result of fexp2(a) is always an integral</li>
    <li>      radv/gfx10: always set ballot_mask_bits to 64</li>
    <li>      radv: merge radv_shader_variant_info into radv_shader_info</li>
    <li>      radv: move ac_fill_shader_info() to radv_nir_shader_info_pass()</li>
    <li>      radv: gather clip/cull distances in the shader info pass</li>
    <li>      radv: gather pointsize in the shader info pass</li>
    <li>      radv: gather viewport in the shader info pass</li>
    <li>      radv: gather layer in the shader info pass</li>
    <li>      radv: gather primitive ID in the shader info pass</li>
    <li>      radv: calculate the GSVS vertex size in the shader info pass</li>
    <li>      radv: calculate esgs_itemsize in the shader info pass</li>
    <li>      radv/gfx10: account for the subpass view for the NGG GS storage</li>
    <li>      radv/gfx10: make use the output usage mask when exporting NGG GS params</li>
    <li>      radv/gfx10: determine the number of vertices per primitive for TES</li>
    <li>      radv: do not pass all compiler options to the shader info pass</li>
    <li>      radv: fill shader info for all stages in the pipeline</li>
    <li>      radv: store GFX9 GS state as part of the shader info</li>
    <li>      radv: store GFX10 NGG state as part of the shader info</li>
    <li>      radv: store the ESGS ring size as part of gfx10_ngg_info</li>
    <li>      radv: calculate GFX9 GS and GFX10 NGG states before compiling shader variants</li>
    <li>      radv/gfx10: declare a LDS symbol for the NGG emit space</li>
    <li>      radv: fix allocating number of user sgprs if streamout is used</li>
    <li>      radv/winsys: add support for GS and OA domains</li>
    <li>      radv/gfx10: add an option to switch from legacy to NGG streamout</li>
    <li>      radv/gfx10: implement NGG streamout begin/end functions</li>
    <li>      radv/gfx10: allocate GDS/OA buffer objects for NGG streamout</li>
    <li>      radv/gfx10: adjust the GS NGG scratch size for streamout</li>
    <li>      radv/gfx10: unconditionally declare scratch space for NGG streamout without GS</li>
    <li>      radv/gfx10: adjust the LDS size for VS/TES NGG streamout</li>
    <li>      radv/gfx10: fix unnecessary LDS overallocation for NGG GS</li>
    <li>      radv/gfx10: compute the correct buffer size for NGG streamout</li>
    <li>      radv/gfx10: gather GS output for VS as NGG</li>
    <li>      radv/gfx10: enable NGG_WAVE_ID_EN for NGG streamout</li>
    <li>      radv/gfx10: make GDS idle when leaving the IB</li>
    <li>      radv/gfx10: make sure to wait for idle before clearing GDS</li>
    <li>      radv/gfx10: implement NGG streamout</li>
    <li>      radv/gfx10: disable unsupported transform feedback features for NGG</li>
    <li>      radv: fix writing depth/stencil clear values to image</li>
    <li>      radv: fix loading 64-bit GS inputs</li>
    <li>      radv/gfx10: fix VK_KHR_pipeline_executable_properties with NGG GS</li>
    <li>      radv/gfx10: add radv_device::use_ngg</li>
    <li>      radv/gfx10: add missing counter buffer to the BO list</li>
    <li>      radv/gfx10: fix storing/loading NGG stream outputs for VS and TES</li>
    <li>      radv/gfx10: use the component mask when storing/loading NGG stream outputs</li>
    <li>      radv/gfx10: fix storing/loading NGG stream outputs for GS</li>
    <li>      radv/gfx10: fix NGG streamout with triangle strips for VS</li>
    <li>      radv: rework the slow depthstencil clear to write depth from PS</li>
    <li>      Revert &quot;radv: disable viewport clamping even if FS doesn&#x27;t write Z&quot;</li>
    <li>      radv: fix build</li>
    <li>      radv/gfx10: fix the ESGS ring size symbol</li>
    <li>      radv: enable lower_fmod for the LLVM path</li>
    <li>      ac/nir: remove unused code for nir_op_{fmod,frem}</li>
    <li>      radv: implement VK_KHR_shader_clock</li>
    <li>      drirc: enable vk_x11_override_min_image_count for DOOM</li>
    <li>      radv: bump minTexelBufferOffsetAlignment to 4</li>
    <li>      radv: get the device name from radeon_info::name</li>
    <li>      radv: sync before resetting query pools if timestamps have been written</li>
    <li>      radv: use a compute shader for copying timestamp query results</li>
    <li>      radv: fix DCC fast clear code for intensity formats</li>
    <li>      radv: rename VK_KHR_shader_float16_int8 structs/constants</li>
    <li>      Revert &quot;radv: do not emit PKT3_CONTEXT_CONTROL with AMDGPU 3.6.0+&quot;</li>
    <li>      radv: fix DCC fast clear code for intensity formats (correctly)</li>
    <li>      ac/llvm: add ac_build_canonicalize() helper</li>
    <li>      ac/llvm: add AC_FLOAT_MODE_ROUND_TO_ZERO</li>
    <li>      ac/llvm: force fneg/fabs to flush denorms to zero if requested</li>
    <li>      radv: implement VK_KHR_shader_float_controls</li>
    <li>      radv: enable VK_KHR_shader_float_controls on GFX6-GFX7</li>
    <li>      radv: do not print useless descriptors info in hang reports</li>
    <li>      radv: print which ring is dumped in hang reports</li>
    <li>      radv: dump trace files earlier if a GPU hang is detected</li>
    <li>      radv: do not dump descriptors twice in hang reports</li>
    <li>      radv: advertise VK_KHR_spirv_1_4</li>
    <li>      ac/llvm: fix ac_to_integer_type() for 32-bit const addr space pointers</li>
    <li>      radv: fix updating bound fast ds clear values with different aspects</li>
    <li>      radv: do not create meta pipelines with 16 samples</li>
    <li>      radv: add an assertion in radv_gfx10_compute_bin_size()</li>
    <li>      radv: do not emit rbplus if attachments are undefined</li>
    <li>      radv/gfx10: re-enable fast depth/stencil clears with separate aspects</li>
    <li>      radv/gfx10: fix 3D images</li>
    <li>      radv: fix vkUpdateDescriptorSets with inline uniform blocks</li>
    <li>      radv: fix a performance regression with graphics depth/stencil clears</li>
    <li>      radv: compute the number of records correctly for vertex buffers</li>
    <li>      radv: fix VK_KHR_shader_float_controls dependency on GFX6-7</li>
    <li>      radv: enable fast depth/stencil clears with separate aspects on GFX8</li>
    <li>      radv: fix OpQuantizeToF16 for NaN on GFX6-7</li>
    <li>      radv: fix dumping SPIR-V into hang reports</li>
    <li>      radv: move nomemorycache debug option at the right palce</li>
    <li>      radv: fix perftest options</li>
    <li>      radv: fix compute pipeline keys when optimizations are disabled</li>
    <li>      radv: fix enabling sample shading with SampleID/SamplePosition</li>
    <li>      radv/gfx10: fix implementation of exclusive scans</li>
    <li>      ac/nir: fix out-of-bound access when loading constants from global</li>
    <p></p>
    <p>Sergii Romantsov (4):</p>
    <li>      intel/dri: finish proper glthread</li>
    <li>      nir/large_constants: more careful data copying</li>
    <li>      nir/large_constants: pass after lowering copy_deref</li>
    <li>      meta: leak of shader program when decompressing tex-images</li>
    <p></p>
    <p>Stephen Barber (1):</p>
    <li>      nouveau: add idep_nir_headers as dep for libnouveau</li>
    <p></p>
    <p>Tapani Pälli (23):</p>
    <li>      util: fix os_create_anonymous_file on android</li>
    <li>      iris/android: fix build and link with libmesa_intel_perf</li>
    <li>      egl: reset blob cache set/get functions on terminate</li>
    <li>      intel/genxml: generate pack files for gen12 on android builds</li>
    <li>      intel/isl: build android libmesa_isl for gen12</li>
    <li>      iris: build android libmesa_iris for gen12</li>
    <li>      anv: build libanv for gen12 in android build</li>
    <li>      i965: initialize bo_reuse when creating brw_bufmgr</li>
    <li>      iris: use driconf for &#x27;bo_reuse&#x27; parameter</li>
    <li>      android: fix linking issues with liblog</li>
    <li>      iris: close screen fd on iris_destroy_screen</li>
    <li>      egl: check for NULL value like eglGetSyncAttribKHR does</li>
    <li>      iris: disable aux on first get_param if not created with aux</li>
    <li>      mesa/st: calculate texture size based on EGLImage miplevel</li>
    <li>      anv/android: fix images created with external format support</li>
    <li>      i965: setup sized internalformat for MESA_FORMAT_R10G10B10A2_UNORM</li>
    <li>      mesa: add [Program]Uniform*64ARB display list support</li>
    <li>      mesa: enable ARB_gpu_shader_int64 in compat profile</li>
    <li>      Revert &quot;egl: implement new functions from EGL_EXT_image_flush_external&quot;</li>
    <li>      Revert &quot;egl: handle EGL_IMAGE_EXTERNAL_FLUSH_EXT&quot;</li>
    <li>      Revert &quot;st/dri: add support for EGL_EXT_image_flush_external&quot;</li>
    <li>      Revert &quot;st/dri: assume external consumers of back buffers can write to the buffers&quot;</li>
    <li>      Revert &quot;dri_interface: add interface for EGL_EXT_image_flush_external&quot;</li>
    <p></p>
    <p>Thomas Hellstrom (2):</p>
    <li>      svga: Fix banded DMA upload unmap</li>
    <li>      winsys/svga: Limit the maximum DMA hardware buffer size</li>
    <p></p>
    <p>Thong Thai (2):</p>
    <li>      Revert &quot;radeonsi: don&#x27;t emit PKT3_CONTEXT_CONTROL on amdgpu&quot;</li>
    <li>      radeonsi: add JPEG decode support for VCN 2.0 devices</li>
    <p></p>
    <p>Timothy Arceri (35):</p>
    <li>      radeonsi/nir: fix number of used samplers</li>
    <li>      util/disk_cache: bump thread count assigned to disk cache queue</li>
    <li>      util/u_queue: track job size and limit the size of queue growth</li>
    <li>      util/disk_cache: make use of the total job size limiting feature</li>
    <li>      radeonsi/nir: lower load constants to scalar</li>
    <li>      glsl: fix crash compiling bindless samplers inside unnamed UBOs</li>
    <li>      nir: fix nir_variable_data packing</li>
    <li>      nir: improve nir_variable packing</li>
    <li>      glsl: remove propagate_invariance() call from the linker</li>
    <li>      radv: get topology from pipeline key rather than VkGraphicsPipelineCreateInfo</li>
    <li>      radv: add debug option to turn off in memory cache</li>
    <li>      radv: add radv_create_shaders() to radv_shader.h</li>
    <li>      radv: add radv_secure_compile_type enum</li>
    <li>      radv: add some new members to radv device and instance for secure compile</li>
    <li>      radv: add radv_device_use_secure_compile() helper</li>
    <li>      radv: allow the secure process to read and write from disk cache</li>
    <li>      radv: for secure compile exit early from radv_shader_variant_create()</li>
    <li>      radv: add radv_secure_compile()</li>
    <li>      radv: a support for a secure compile fork at device creation</li>
    <li>      radv: enable secure compile support</li>
    <li>      util: remove LIST_INITHEAD macro</li>
    <li>      util: remove LIST_ADDTAIL macro</li>
    <li>      util: remove LIST_ADD macro</li>
    <li>      util: remove LIST_REPLACE macro</li>
    <li>      util: remove LIST_DELINIT macro</li>
    <li>      util: remove LIST_DEL macro</li>
    <li>      util: rename list_empty() to list_is_empty()</li>
    <li>      util: remove LIST_IS_EMPTY macro</li>
    <li>      radv: allow select() calls in secure compile</li>
    <li>      radv: add radv_sc_read() helper</li>
    <li>      radv: make use of radv_sc_read()</li>
    <li>      radv: add some infrastructure for fresh forks for each secure compile</li>
    <li>      radv: add a secure_compile_open_fifo_fds() helper</li>
    <li>      radv: create a fresh fork for each pipeline compile</li>
    <li>      glsl/nir: iterate the system values list when adding varyings</li>
    <p></p>
    <p>Timur Kristóf (48):</p>
    <li>      st/nine: Properly initialize GLSL types for NIR shaders.</li>
    <li>      nir: Carve out nir_lower_samplers from GLSL code.</li>
    <li>      tgsi_to_nir: Remove dependency on libglsl.</li>
    <li>      amd/common: Move ac_export_mrt_z to ac_llvm_build.</li>
    <li>      amd/common: Extract some helper functions to ac_shader_util.</li>
    <li>      amd/common: Add num_shared_vgprs to ac_shader_config for GFX10.</li>
    <li>      radv: Set shared VGPR count in radv_postprocess_config.</li>
    <li>      amd/common: Introduce ac_get_fs_input_vgpr_cnt.</li>
    <li>      radv: Add debug option to dump meta shaders.</li>
    <li>      radv: Fix L2 cache rinse programming.</li>
    <li>      amd: Move all amd/common code that depends on LLVM to amd/llvm.</li>
    <li>      aco: Set +wavefrontsize64 for LLVM disassembler in GFX10 wave64 mode.</li>
    <li>      aco: Add missing GFX10 specific fields and some README notes.</li>
    <li>      aco: Support GFX10 SMEM in aco_assembler.</li>
    <li>      aco: Support GFX10 VINTRP in aco_assembler.</li>
    <li>      aco: Support GFX10 DS in aco_assembler.</li>
    <li>      aco: Support GFX10 MUBUF in aco_assembler.</li>
    <li>      amd/common: Add extern &quot;C&quot; to some headers that were missing it.</li>
    <li>      aco: Link ACO with amd/common.</li>
    <li>      aco: Support GFX10 MTBUF in aco_assembler.</li>
    <li>      aco: Support GFX10 MIMG and GFX9 D16 in aco_assembler.</li>
    <li>      aco: Fix GFX9 FLAT, SCRATCH, GLOBAL instructions, add GFX10 support.</li>
    <li>      aco: Support GFX10 EXP in aco_assembler.</li>
    <li>      aco: Support GFX10 VOP3 and VOP1 as VOP3 in aco_assembler.</li>
    <li>      aco: Set GFX10 DLC bit properly.</li>
    <li>      aco: Use ac_get_sampler_dim, delete duplicate code.</li>
    <li>      aco: Set GFX10 dimensionality on the instructions that need it.</li>
    <li>      aco: Support subvector loops in aco_assembler.</li>
    <li>      aco: Fix VS input VGPRs on GFX10.</li>
    <li>      aco: Fix s_dcache_wb on GFX10.</li>
    <li>      aco: Add extra assertion for number of FS input VGPRs.</li>
    <li>      aco: Clean up usages of PhysReg::reg from aco_assembler.</li>
    <li>      aco/gfx10: Wait for pending SMEM stores before loads</li>
    <li>      aco/gfx10: Fix PS exports for SPI_SHADER_32_AR.</li>
    <li>      aco/gfx10: Update constant addresses in fix_branches_gfx10.</li>
    <li>      aco/gfx10: Add notes about some GFX10 hazards.</li>
    <li>      aco/gfx10: Mitigate VcmpxPermlaneHazard.</li>
    <li>      aco/gfx10: Mitigate VcmpxExecWARHazard.</li>
    <li>      aco/gfx10: Mitigate SMEMtoVectorWriteHazard.</li>
    <li>      aco/gfx10: Mitigate LdsBranchVmemWARHazard.</li>
    <li>      aco/gfx10: Fix mitigation of VMEMtoScalarWriteHazard.</li>
    <li>      aco: Refactor hazard mitigations, separate pass for GFX10.</li>
    <li>      st/nine: Fix build with -Werror=empty-body</li>
    <li>      st/nine: Fix unused variable warnings in release build.</li>
    <li>      aco: Implement subgroup shuffle in GFX10 wave64 mode.</li>
    <li>      aco: Introduce vgpr_limit to keep track of available VGPRs.</li>
    <li>      radv: Enable ACO on Navi.</li>
    <li>      ac: Handle invalid GFX10 format correctly in ac_get_tbuffer_format.</li>
    <p></p>
    <p>Tomeu Vizoso (19):</p>
    <li>      panfrost/ci: Use Volt-based runner for dEQP tests</li>
    <li>      panfrost/ci: Print bootstrap log</li>
    <li>      panfrost/ci: Build kernel with CONFIG_DETECT_HUNG_TASK</li>
    <li>      panfrost/ci: Install qemu-arm-static into chroot</li>
    <li>      panfrost/ci: Print load stats</li>
    <li>      panfrost/ci: Print only regressions</li>
    <li>      panfrost/ci: Re-add support for armhf</li>
    <li>      panfrost/ci: Use special runner for LAVA jobs</li>
    <li>      panfrost/ci: Increase timeouts</li>
    <li>      panfrost/ci: Run dEQP with the surfaceless platform</li>
    <li>      panfrost/ci: Update kernel to 5.3-rc8</li>
    <li>      panfrost/ci: Use releases for Volt dEQP</li>
    <li>      gitlab-ci: Run dEQP on devices with Panfrost</li>
    <li>      gitlab-ci: Move LAVA-related files into top-level ci dir</li>
    <li>      gitlab-ci/lava: Fix image to use in test jobs</li>
    <li>      gitlab-ci/lava: Use files to list tests to skip</li>
    <li>      gitlab-ci/lava: Test Lima driver with dEQP</li>
    <li>      panfrost: Keep track of active BOs</li>
    <li>      gitlab-ci: Update kernel for LAVA jobs to 5.4-rc4</li>
    <p></p>
    <p>Urja Rannikko (1):</p>
    <li>      panfrost: allocate bo for occlusion query results</li>
    <p></p>
    <p>Vasily Khoruzhick (35):</p>
    <li>      lima/ppir: refactor const lowering</li>
    <li>      lima/ppir: clone ld_{uni,tex,var} into each block</li>
    <li>      lima/ppir: add support for unconditional branches and condition negation</li>
    <li>      lima/ppir: set write mask for texture loads if dest is reg</li>
    <li>      lima/ppir: fix ordering deps</li>
    <li>      lima/ppir: add write after read deps for registers</li>
    <li>      lima/ppir: add dummy op</li>
    <li>      lima/ppir: create ppir block for each corresponding NIR block</li>
    <li>      lima/ppir: turn store_color into ALU node</li>
    <li>      lima/ppir: validate shader outputs</li>
    <li>      lima/ppir: add better liveness analysis</li>
    <li>      lima/ppir: add control flow support</li>
    <li>      lima/ppir: print register index and components number for spilled register</li>
    <li>      lima: fix texture descriptor issues</li>
    <li>      lima/ppir: add common helper for creating movs</li>
    <li>      lima/ppir: don&#x27;t assume that load coords gets value from register</li>
    <li>      lima/ppir: clone uniforms and load_coords into each successor</li>
    <li>      nir: allow specifying filter callback in lower_alu_to_scalar</li>
    <li>      lima/ppir: don&#x27;t lower vector {b,f}csel to scalar if condition is scalar</li>
    <li>      lima/ppir: don&#x27;t lower phis to scalar</li>
    <li>      lima/gpir: lower fceil</li>
    <li>      lima/gpir: fix warning in gpir disassembler</li>
    <li>      lima: run opt_algebraic between int_to_float and boot_to_float for vs</li>
    <li>      lima/ppir: drop fge/flt/feq/fne options</li>
    <li>      lima: set .out_sync field of req in lima_submit_start()</li>
    <li>      lima: add standalone disassembler with primitive MBS parser</li>
    <li>      lima: use 0 to poll if BO is busy in lima_bo_wait()</li>
    <li>      lima: implement BO cache</li>
    <li>      lima/ppir: don&#x27;t attempt to clone tex coords if it&#x27;s not varying</li>
    <li>      lima/ppir: add node dependency types</li>
    <li>      lima/ppir: add support for indirect load of uniforms and varyings</li>
    <li>      lima/ppir: add NIR pass to split varying loads</li>
    <li>      lima: set uniforms_address lower bits properly</li>
    <li>      lima/ppir: don&#x27;t clone texture loads</li>
    <li>      lima: fix PP stack size</li>
    <p></p>
    <p>Vinson Lee (7):</p>
    <li>      glx: Fix up glXQueryGLXPbufferSGIX on macOS.</li>
    <li>      swr: Fix build with llvm-9.0 again.</li>
    <li>      travis: Fail build if any command in if statement fails.</li>
    <li>      util: Define strchrnul on macOS.</li>
    <li>      swr: Fix make_unique build error.</li>
    <li>      scons: Add coroutines component to build.</li>
    <li>      meson: Add coroutines component to llvmpipe build.</li>
    <p></p>
    <p>Wladimir J. van der Laan (1):</p>
    <li>      etnaviv: GC7000: Texture descriptors</li>
    <p></p>
    <p>Yevhenii Kolesnikov (2):</p>
    <li>      glsl: Enable textureSize for samplerExternalOES</li>
    <li>      meson: Fix linkage of libgallium_nine with libgalliumvl</li>
    <p></p>
    <p>Zebediah Figura (1):</p>
    <li>      Revert &quot;draw: revert using correct order for prim decomposition.&quot;</li>
    <p></p>
    <p>Zhaowei Yuan (1):</p>
    <li>      broadcom/vc4: Expand width of dst surface</li>
    <p></p>
    <p>Zhu, James (1):</p>
    <li>      radeon: Fix mjpeg issue for ARCTURUS</li>
    <p></p>
    <p>nia (1):</p>
    <li>      loader: include limits.h for PATH_MAX</li>
    <p></p>
    <p>pal1000 (3):</p>
    <li>      scons/windows: Support build with LLVM 9.</li>
    <li>      scons: Fix MSYS2 Mingw-w64 build.</li>
    <li>      scons/windows: Enable compute shaders when possible.</li>
    <p></p>
    <p>renchenglei (1):</p>
    <li>      egl/android: Enable HAL_PIXEL_FORMAT_RGBA_1010102 format</li>
    <p></p>
    <p></p>
</ul>

</div>
</body>
</html>
